Step 1: Load data (bears without splitting) that was used in Phase I

In [1]:
! unzip bearsWithoutSplitting.zip
Archive:  bearsWithoutSplitting.zip
   creating: bearsWithoutSplitting/
   creating: bearsWithoutSplitting/polar/
  inflating: bearsWithoutSplitting/.DS_Store  
  inflating: __MACOSX/bearsWithoutSplitting/._.DS_Store  
   creating: bearsWithoutSplitting/panda/
   creating: bearsWithoutSplitting/grizzly/
  inflating: bearsWithoutSplitting/polar/polar_1198.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1198.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1365.png  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1365.png  
  inflating: bearsWithoutSplitting/polar/polar_1173.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1173.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1167.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1167.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1359.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1359.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1371.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1371.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1403.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1403.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1239.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1239.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1205.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1205.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1211.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1211.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1007.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1007.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1013.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1013.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1012.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1012.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1006.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1006.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1210.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1210.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1204.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1204.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1238.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1238.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1402.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1402.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1364.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1364.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1370.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1370.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1358.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1358.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1166.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1166.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1172.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1172.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1199.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1199.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1158.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1158.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1164.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1164.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1170.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1170.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1399.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1399.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1366.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1366.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1400.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1400.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1372.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1372.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1212.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1212.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1206.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1206.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1038.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1038.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1010.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1010.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1004.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1004.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1005.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1005.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1011.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1011.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1039.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1039.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1207.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1207.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1213.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1213.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1373.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1373.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1367.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1367.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1401.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1401.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1398.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1398.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1171.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1171.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1165.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1165.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1159.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1159.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1363.png  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1363.png  
  inflating: bearsWithoutSplitting/polar/polar_1161.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1161.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1175.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1175.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1149.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1149.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1388.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1388.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1405.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1405.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1377.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1377.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1411.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1411.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1217.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1217.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1203.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1203.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1015.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1015.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1001.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1001.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1029.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1029.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1028.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1028.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1000.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1000.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1014.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1014.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1202.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1202.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1216.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1216.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1376.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1376.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1410.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1410.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1404.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1404.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1362.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1362.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1389.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1389.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1148.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1148.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1174.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1174.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1160.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1160.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1360.png  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1360.png  
  inflating: bearsWithoutSplitting/polar/polar_1189.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1189.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1348.png  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1348.png  
  inflating: bearsWithoutSplitting/polar/polar_1176.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1176.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1162.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1162.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1374.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1374.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1406.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1406.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1200.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1200.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1214.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1214.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1228.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1228.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1002.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1002.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1016.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1016.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1017.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1017.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1003.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1003.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1229.png  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1229.png  
  inflating: bearsWithoutSplitting/polar/polar_1215.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1215.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1201.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1201.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1349.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1349.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1407.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1407.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1375.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1375.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1163.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1163.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1177.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1177.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1188.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1188.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1361.png  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1361.png  
  inflating: bearsWithoutSplitting/polar/polar_1138.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1138.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1110.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1110.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1104.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1104.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1312.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1312.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1306.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1306.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1299.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1299.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1266.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1266.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1272.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1272.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1058.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1058.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1064.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1064.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1070.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1070.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1071.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1071.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1065.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1065.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1059.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1059.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1273.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1273.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1267.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1267.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1298.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1298.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1307.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1307.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1313.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1313.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1105.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1105.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1111.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1111.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1139.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1139.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1107.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1107.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1113.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1113.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1339.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1339.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1305.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1305.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1311.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1311.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1259.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1259.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1271.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1271.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1265.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1265.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1098.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1098.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1073.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1073.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1067.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1067.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1066.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1066.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1099.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1099.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1264.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1264.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1270.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1270.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1258.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1258.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1310.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1310.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1304.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1304.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1338.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1338.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1112.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1112.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1106.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1106.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1102.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1102.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1116.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1116.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1300.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1300.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1314.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1314.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1328.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1328.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1274.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1274.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1260.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1260.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1248.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1248.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1089.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1089.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1076.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1076.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1062.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1062.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1063.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1063.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1077.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1077.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1088.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1088.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1249.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1249.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1261.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1261.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1275.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1275.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1329.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1329.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1315.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1315.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1301.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1301.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1117.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1117.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1103.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1103.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1115.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1115.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1101.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1101.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1129.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1129.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1317.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1317.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1303.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1303.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1288.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1288.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1263.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1263.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1277.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1277.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1061.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1061.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1075.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1075.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1049.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1049.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1048.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1048.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1074.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1074.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1060.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1060.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1276.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1276.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1262.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1262.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1289.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1289.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1302.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1302.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1316.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1316.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1128.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1128.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1100.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1100.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1114.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1114.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1119.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1119.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1131.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1131.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1125.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1125.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1333.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1333.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1327.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1327.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1284.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1284.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1290.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1290.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1247.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1247.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1253.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1253.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1086.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1086.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1092.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1092.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1079.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1079.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1045.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1045.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1051.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1051.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1050.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1050.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1044.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1044.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1078.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1078.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1093.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1093.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1087.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1087.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1252.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1252.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1246.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1246.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1291.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1291.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1285.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1285.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1326.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1326.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1332.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1332.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1124.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1124.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1130.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1130.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1118.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1118.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1126.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1126.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1132.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1132.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1318.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1318.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1324.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1324.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1330.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1330.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1293.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1293.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1287.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1287.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1278.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1278.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1250.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1250.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1244.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1244.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1091.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1091.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1085.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1085.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1052.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1052.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1046.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1046.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1047.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1047.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1053.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1053.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1084.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1084.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1090.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1090.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1245.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1245.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1251.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1251.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1279.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1279.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1286.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1286.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1292.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1292.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1331.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1331.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1325.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1325.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1319.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1319.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1133.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1133.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1127.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1127.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1123.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1123.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1137.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1137.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1321.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1321.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1335.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1335.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1296.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1296.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1282.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1282.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1255.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1255.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1241.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1241.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1269.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1269.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1094.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1094.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1057.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1057.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1043.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1043.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1042.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1042.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1056.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1056.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1081.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1081.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1095.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1095.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1268.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1268.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1240.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1240.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1254.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1254.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1283.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1283.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1297.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1297.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1308.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1308.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1334.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1334.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1320.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1320.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1136.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1136.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1122.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1122.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1134.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1134.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1120.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1120.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1108.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1108.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1336.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1336.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1322.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1322.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1281.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1281.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1295.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1295.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1242.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1242.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1256.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1256.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1083.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1083.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1097.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1097.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1040.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1040.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1054.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1054.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1068.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1068.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1069.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1069.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1055.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1055.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1041.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1041.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1096.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1096.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1257.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1257.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1243.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1243.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1294.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1294.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1280.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1280.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1323.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1323.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1337.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1337.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1109.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1109.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1121.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1121.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1135.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1135.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1191.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1191.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1185.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1185.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1152.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1152.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1146.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1146.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1393.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1393.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1387.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1387.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1378.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1378.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1350.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1350.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1344.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1344.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1218.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1218.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1224.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1224.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1230.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1230.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1026.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1026.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1032.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1032.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1033.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1033.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1027.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1027.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1231.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1231.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1225.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1225.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1219.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1219.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1345.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1345.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1351.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1351.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1379.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1379.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1386.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1386.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1392.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1392.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1147.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1147.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1153.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1153.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1184.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1184.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1190.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1190.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1186.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1186.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1192.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1192.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1347.png  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1347.png  
  inflating: bearsWithoutSplitting/polar/polar_1179.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1179.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1151.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1151.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1384.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1384.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1390.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1390.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1409.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1409.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1353.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1353.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1233.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1233.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1227.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1227.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1019.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1019.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1031.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1031.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1025.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1025.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1024.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1024.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1030.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1030.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1018.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1018.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1226.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1226.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1232.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1232.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1346.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1346.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1408.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1408.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1391.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1391.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1385.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1385.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1150.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1150.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1144.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1144.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1178.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1178.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1193.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1193.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1187.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1187.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1352.png  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1352.png  
  inflating: bearsWithoutSplitting/polar/polar_1183.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1183.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1197.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1197.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1140.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1140.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1154.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1154.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1168.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1168.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1381.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1381.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1395.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1395.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1342.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1342.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1356.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1356.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1236.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1236.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1222.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1222.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1034.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1034.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1020.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1020.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1008.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1008.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1009.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1009.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1021.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1021.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1035.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1035.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1223.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1223.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1237.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1237.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1357.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1357.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1343.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1343.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1394.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1394.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1380.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1380.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1169.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1169.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1155.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1155.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1141.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1141.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1196.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1196.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1182.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1182.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1194.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1194.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1180.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1180.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1157.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1157.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1143.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1143.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1396.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1396.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1382.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1382.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1355.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1355.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1341.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1341.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1369.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1369.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1221.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1221.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1235.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1235.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1209.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1209.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1023.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1023.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1037.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1037.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1036.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1036.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1022.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1022.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1208.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1208.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1234.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1234.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1220.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1220.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1368.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1368.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1340.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1340.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1383.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1383.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1397.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1397.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1142.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1142.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1156.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1156.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1181.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1181.jpg  
  inflating: bearsWithoutSplitting/polar/polar_1354.png  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1354.png  
  inflating: bearsWithoutSplitting/polar/polar_1195.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/polar/._polar_1195.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1167.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1167.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1173.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1173.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1198.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1198.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1359.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1359.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1365.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1365.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1371.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1371.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1239.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1239.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1211.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1211.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1205.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1205.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1013.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1013.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1007.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1007.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1006.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1006.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1012.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1012.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1204.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1204.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1210.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1210.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1238.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1238.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1370.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1370.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1402.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1402.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1364.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1364.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1358.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1358.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1199.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1199.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1172.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1172.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1166.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1166.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1158.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1158.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1170.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1170.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1164.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1164.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1372.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1372.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1366.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1366.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1400.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1400.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1399.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1399.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1206.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1206.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1212.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1212.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1038.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1038.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1004.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1004.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1010.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1010.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1011.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1011.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1005.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1005.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1039.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1039.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1213.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1213.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1207.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1207.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1398.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1398.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1367.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1367.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1401.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1401.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1373.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1373.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1165.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1165.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1171.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1171.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1159.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1159.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1175.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1175.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1161.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1161.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1149.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1149.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1377.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1377.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1363.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1363.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1388.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1388.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1203.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1203.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1217.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1217.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1001.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1001.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1015.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1015.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1029.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1029.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1028.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1028.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1014.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1014.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1000.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1000.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1216.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1216.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1202.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1202.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1389.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1389.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1362.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1362.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1376.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1376.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1148.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1148.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1160.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1160.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1174.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1174.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1162.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1162.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1176.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1176.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1189.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1189.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1360.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1360.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1374.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1374.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1348.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1348.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1214.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1214.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1200.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1200.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1228.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1228.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1016.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1016.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1002.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1002.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1003.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1003.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1017.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1017.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1229.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1229.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1201.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1201.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1215.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1215.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1349.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1349.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1375.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1375.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1361.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1361.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1188.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1188.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1177.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1177.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1163.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1163.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1138.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1138.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1104.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1104.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1110.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1110.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1306.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1306.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1312.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1312.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1272.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1272.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1266.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1266.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1299.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1299.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1058.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1058.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1070.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1070.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1064.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1064.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1065.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1065.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1071.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1071.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1059.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1059.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1298.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1298.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1267.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1267.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1273.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1273.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1313.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1313.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1307.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1307.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1111.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1111.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1105.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1105.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1139.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1139.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1113.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1113.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1107.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1107.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1339.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1339.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1311.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1311.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1305.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1305.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1259.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1259.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1265.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1265.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1271.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1271.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1067.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1067.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1073.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1073.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1098.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1098.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1099.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1099.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1072.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1072.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1066.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1066.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1270.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1270.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1264.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1264.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1258.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1258.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1304.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1304.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1310.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1310.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1338.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1338.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1106.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1106.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1112.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1112.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1116.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1116.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1102.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1102.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1314.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1314.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1300.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1300.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1328.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1328.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1260.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1260.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1274.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1274.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1248.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1248.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1062.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1062.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1076.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1076.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1089.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1089.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1088.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1088.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1077.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1077.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1063.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1063.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1249.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1249.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1275.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1275.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1261.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1261.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1329.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1329.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1301.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1301.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1315.png  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1315.png  
  inflating: bearsWithoutSplitting/panda/panda_1103.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1103.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1117.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1117.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1101.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1101.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1115.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1115.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1129.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1129.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1303.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1303.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1317.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1317.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1277.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1277.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1263.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1263.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1288.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1288.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1075.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1075.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1061.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1061.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1049.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1049.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1048.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1048.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1060.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1060.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1074.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1074.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1289.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1289.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1262.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1262.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1276.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1276.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1316.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1316.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1302.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1302.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1128.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1128.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1114.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1114.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1100.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1100.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1119.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1119.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1125.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1125.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1131.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1131.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1327.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1327.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1333.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1333.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1253.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1253.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1247.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1247.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1290.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1290.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1284.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1284.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1079.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1079.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1051.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1051.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1045.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1045.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1092.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1092.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1086.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1086.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1087.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1087.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1093.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1093.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1044.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1044.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1050.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1050.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1078.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1078.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1285.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1285.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1291.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1291.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1246.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1246.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1252.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1252.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1332.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1332.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1326.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1326.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1130.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1130.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1124.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1124.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1118.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1118.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1132.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1132.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1126.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1126.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1318.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1318.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1330.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1330.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1324.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1324.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1278.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1278.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1244.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1244.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1250.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1250.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1287.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1287.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1293.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1293.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1046.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1046.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1052.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1052.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1085.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1085.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1091.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1091.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1090.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1090.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1084.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1084.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1053.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1053.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1047.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1047.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1292.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1292.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1286.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1286.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1251.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1251.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1245.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1245.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1279.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1279.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1325.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1325.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1331.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1331.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1319.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1319.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1127.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1127.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1133.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1133.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1137.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1137.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1123.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1123.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1321.png  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1321.png  
  inflating: bearsWithoutSplitting/panda/panda_1335.png  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1335.png  
  inflating: bearsWithoutSplitting/panda/panda_1309.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1309.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1255.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1255.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1282.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1282.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1296.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1296.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1043.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1043.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1057.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1057.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1080.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1080.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1094.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1094.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1269.png  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1269.png  
  inflating: bearsWithoutSplitting/panda/panda_1095.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1095.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1081.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1081.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1056.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1056.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1042.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1042.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1297.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1297.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1283.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1283.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1268.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1268.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1254.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1254.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1240.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1240.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1308.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1308.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1320.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1320.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1334.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1334.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1122.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1122.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1136.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1136.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1120.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1120.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1134.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1134.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1108.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1108.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1322.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1322.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1336.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1336.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1256.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1256.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1242.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1242.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1295.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1295.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1281.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1281.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1054.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1054.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1040.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1040.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1068.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1068.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1097.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1097.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1083.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1083.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1082.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1082.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1096.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1096.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1069.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1069.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1041.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1041.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1055.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1055.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1280.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1280.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1294.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1294.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1243.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1243.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1257.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1257.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1337.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1337.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1323.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1323.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1109.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1109.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1135.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1135.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1121.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1121.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1146.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1146.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1152.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1152.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1185.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1185.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1191.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1191.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1378.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1378.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1344.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1344.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1350.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1350.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1387.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1387.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1393.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1393.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1218.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1218.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1230.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1230.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1224.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1224.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1032.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1032.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1026.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1026.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1027.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1027.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1033.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1033.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1225.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1225.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1231.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1231.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1219.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1219.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1392.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1392.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1386.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1386.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1351.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1351.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1345.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1345.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1379.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1379.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1190.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1190.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1184.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1184.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1153.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1153.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1147.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1147.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1151.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1151.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1145.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1145.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1390.png  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1390.png  
  inflating: bearsWithoutSplitting/panda/panda_1192.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1192.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1347.png  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1347.png  
  inflating: bearsWithoutSplitting/panda/panda_1186.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1186.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1353.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1353.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1179.png  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1179.png  
  inflating: bearsWithoutSplitting/panda/panda_1384.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1384.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1227.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1227.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1233.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1233.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1019.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1019.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1025.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1025.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1031.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1031.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1030.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1030.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1024.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1024.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1018.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1018.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1232.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1232.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1226.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1226.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1385.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1385.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1391.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1391.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1346.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1346.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1352.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1352.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1187.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1187.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1193.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1193.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1144.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1144.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1150.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1150.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1178.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1178.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1154.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1154.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1140.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1140.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1168.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1168.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1197.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1197.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1183.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1183.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1356.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1356.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1342.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1342.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1395.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1395.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1381.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1381.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1222.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1222.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1236.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1236.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1020.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1020.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1034.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1034.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1008.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1008.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1009.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1009.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1035.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1035.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1021.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1021.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1237.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1237.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1223.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1223.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1380.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1380.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1394.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1394.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1343.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1343.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1357.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1357.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1182.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1182.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1196.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1196.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1169.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1169.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1141.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1141.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1155.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1155.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1143.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1143.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1157.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1157.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1180.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1180.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1194.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1194.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1341.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1341.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1355.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1355.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1369.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1369.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1382.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1382.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1396.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1396.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1235.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1235.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1221.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1221.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1209.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1209.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1037.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1037.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1023.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1023.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1022.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1022.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1036.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1036.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1208.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1208.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1220.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1220.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1234.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1234.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1397.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1397.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1383.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1383.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1368.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1368.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1354.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1354.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1340.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1340.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1195.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1195.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1181.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1181.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1156.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1156.jpg  
  inflating: bearsWithoutSplitting/panda/panda_1142.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/panda/._panda_1142.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1126.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1126.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1132.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1132.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1318.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1318.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1324.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1324.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1330.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1330.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1278.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1278.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1250.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1250.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1244.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1244.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1293.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1293.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1287.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1287.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1052.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1052.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1046.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1046.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1091.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1091.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1085.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1085.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1084.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1084.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1090.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1090.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1047.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1047.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1053.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1053.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1286.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1286.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1292.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1292.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1245.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1245.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1251.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1251.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1279.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1279.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1331.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1331.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1325.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1325.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1319.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1319.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1133.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1133.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1127.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1127.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1119.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1119.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1131.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1131.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1125.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1125.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1333.png  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1333.png  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1247.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1247.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1253.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1253.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1284.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1284.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1290.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1290.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1079.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1079.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1045.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1045.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1051.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1051.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1086.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1086.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1092.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1092.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1093.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1093.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1087.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1087.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1050.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1050.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1044.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1044.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1078.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1078.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1291.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1291.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1285.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1285.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1252.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1252.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1246.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1246.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1326.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1326.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1332.png  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1332.png  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1124.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1124.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1130.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1130.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1118.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1118.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1134.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1134.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1120.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1120.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1108.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1108.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1336.png  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1336.png  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1322.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1322.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1242.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1242.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1256.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1256.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1281.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1281.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1295.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1295.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1040.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1040.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1054.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1054.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1068.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1068.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1083.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1083.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1097.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1097.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1096.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1096.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1082.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1082.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1069.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1069.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1055.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1055.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1041.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1041.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1294.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1294.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1280.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1280.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1257.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1257.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1243.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1243.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1323.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1323.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1337.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1337.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1109.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1109.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1121.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1121.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1135.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1135.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1123.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1123.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1137.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1137.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1321.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1321.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1335.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1335.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1309.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1309.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1255.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1255.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1241.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1241.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1269.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1269.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1296.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1296.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1282.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1282.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1057.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1057.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1043.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1043.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1094.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1094.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1080.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1080.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1081.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1081.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1095.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1095.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1042.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1042.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1056.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1056.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1283.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1283.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1297.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1297.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1268.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1268.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1240.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1240.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1254.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1254.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1308.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1308.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1334.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1334.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1320.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1320.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1136.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1136.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1122.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1122.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1179.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1179.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1145.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1145.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1151.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1151.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1186.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1186.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1192.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1192.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1347.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1347.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1353.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1353.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1384.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1384.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1390.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1390.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1227.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1227.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1019.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1019.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1031.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1031.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1025.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1025.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1024.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1024.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1030.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1030.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1018.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1018.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1226.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1226.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1232.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1232.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1391.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1391.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1385.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1385.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1352.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1352.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1346.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1346.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1187.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1187.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1150.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1150.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1144.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1144.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1178.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1178.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1152.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1152.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1146.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1146.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1191.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1191.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1185.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1185.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1378.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1378.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1350.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1350.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1344.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1344.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1393.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1393.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1387.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1387.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1218.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1218.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1224.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1224.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1230.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1230.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1026.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1026.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1032.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1032.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1033.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1033.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1027.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1027.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1231.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1231.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1225.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1225.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1219.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1219.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1386.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1386.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1392.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1392.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1351.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1351.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1379.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1379.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1184.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1184.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1190.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1190.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1147.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1147.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1153.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1153.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1157.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1157.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1143.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1143.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1194.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1194.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1341.png  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1341.png  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1180.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1180.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1355.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1355.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1369.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1369.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1396.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1396.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1382.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1382.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1221.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1221.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1235.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1235.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1209.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1209.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1023.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1023.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1037.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1037.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1036.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1036.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1022.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1022.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1208.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1208.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1234.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1234.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1220.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1220.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1383.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1383.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1397.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1397.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1368.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1368.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1354.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1354.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1340.png  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1340.png  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1195.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1195.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1142.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1142.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1156.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1156.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1140.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1140.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1154.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1154.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1168.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1168.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1183.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1183.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1197.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1197.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1342.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1342.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1356.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1356.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1381.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1381.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1395.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1395.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1236.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1236.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1222.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1222.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1034.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1034.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1020.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1020.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1008.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1008.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1009.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1009.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1021.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1021.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1035.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1035.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1223.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1223.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1237.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1237.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1394.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1394.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1380.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1380.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1357.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1357.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1343.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1343.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1196.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1196.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1182.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1182.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1169.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1169.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1155.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1155.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1141.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1141.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1158.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1158.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1164.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1164.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1170.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1170.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1366.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1366.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1372.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1372.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1212.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1212.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1206.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1206.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1038.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1038.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1010.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1010.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1004.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1004.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1005.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1005.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1011.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1011.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1039.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1039.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1207.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1207.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1213.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1213.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1373.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1373.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1367.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1367.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1171.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1171.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1165.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1165.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1159.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1159.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1173.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1173.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1167.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1167.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1198.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1198.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1359.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1359.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1371.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1371.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1239.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1239.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1205.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1205.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1211.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1211.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1007.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1007.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1013.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1013.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1012.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1012.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1006.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1006.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1210.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1210.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1204.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1204.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1238.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1238.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1364.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1364.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1370.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1370.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1358.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1358.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1199.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1199.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1166.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1166.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1172.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1172.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1176.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1176.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1162.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1162.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1189.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1189.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1374.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1374.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1360.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1360.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1348.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1348.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1214.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1214.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1228.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1228.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1002.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1002.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1016.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1016.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1017.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1017.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1003.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1003.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1229.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1229.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1215.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1215.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1201.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1201.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1349.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1349.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1361.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1361.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1375.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1375.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1188.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1188.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1163.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1163.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1177.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1177.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1161.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1161.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1175.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1175.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1149.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1149.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1363.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1363.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1377.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1377.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1388.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1388.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1217.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1217.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1203.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1203.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1015.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1015.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1001.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1001.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1029.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1029.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1028.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1028.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1000.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1000.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1014.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1014.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1202.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1202.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1216.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1216.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1389.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1389.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1376.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1376.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1362.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1362.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1148.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1148.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1174.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1174.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1160.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1160.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1107.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1107.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1113.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1113.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1339.png  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1339.png  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1305.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1305.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1311.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1311.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1259.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1259.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1271.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1271.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1265.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1265.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1073.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1073.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1067.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1067.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1098.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1098.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1099.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1099.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1066.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1066.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1072.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1072.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1264.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1264.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1270.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1270.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1258.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1258.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1304.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1304.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1338.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1338.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1112.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1112.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1106.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1106.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1138.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1138.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1110.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1110.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1104.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1104.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1312.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1312.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1266.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1266.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1272.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1272.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1299.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1299.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1058.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1058.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1064.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1064.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1070.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1070.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1071.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1071.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1065.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1065.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1059.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1059.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1298.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1298.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1273.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1273.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1267.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1267.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1307.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1307.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1313.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1313.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1105.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1105.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1111.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1111.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1139.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1139.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1115.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1115.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1101.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1101.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1129.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1129.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1317.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1317.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1303.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1303.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1263.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1263.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1277.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1277.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1288.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1288.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1061.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1061.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1075.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1075.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1049.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1049.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1048.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1048.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1074.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1074.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1060.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1060.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1289.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1289.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1276.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1276.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1262.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1262.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1302.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1302.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1316.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1316.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1128.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1128.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1100.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1100.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1114.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1114.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1102.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1102.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1116.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1116.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1300.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1300.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1314.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1314.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1328.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1328.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1274.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1274.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1260.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1260.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1248.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1248.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1076.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1076.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1062.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1062.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1089.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1089.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1088.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1088.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1063.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1063.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1077.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1077.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1249.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1249.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1261.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1261.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1275.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1275.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1329.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1329.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1315.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1315.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1301.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1301.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1117.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1117.jpg  
  inflating: bearsWithoutSplitting/grizzly/grizzly_1103.jpg  
  inflating: __MACOSX/bearsWithoutSplitting/grizzly/._grizzly_1103.jpg  

Step 2: Create a generator for the entire dataset and rescale all the images

In [2]:
from tensorflow.keras.preprocessing.image import ImageDataGenerator
# Rescale all images by 1./255
my_generator = ImageDataGenerator(
    rescale=1./255)
In [3]:
#Generator for all of the data
all_generator = my_generator.flow_from_directory(
    './bearsWithoutSplitting/',
    target_size=(48, 48),
    batch_size=4,
    class_mode='categorical',
    )
Found 1198 images belonging to 3 classes.

Step 3: Verify that generators are working and display an image

In [4]:
import matplotlib.pyplot as plt
for my_batch in all_generator:
    # my_batch is a tuple with images and labels
    images = my_batch[0]
    labels = my_batch[1]
    for i in range(len(labels)):
        # Gives one image and its corresponding label
        plt.imshow(images[i])
        plt.colorbar()
        plt.show()
        print(images[i].shape)
        print(labels[i])
        break
    break
(48, 48, 3)
[0. 1. 0.]

Step 4: Build a model and display its structure

In [14]:
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Conv2D, Flatten
from tensorflow.keras import datasets, layers, models

model = models.Sequential()
model.add(layers.Conv2D( 64, ( 3, 3 ), activation = 'relu', input_shape = (48, 48, 3) ) )
model.add(layers.MaxPooling2D(4, 4) )
model.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu' ) )
model.add(layers.MaxPooling2D(2, 2) )
model.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model.add( Flatten() )
model.add( Dense( 32, activation = 'relu' ) )
model.add( Dense( 3, activation = 'softmax' ) )
In [15]:
model.summary()
Model: "sequential_1"
_________________________________________________________________
 Layer (type)                Output Shape              Param #   
=================================================================
 conv2d_3 (Conv2D)           (None, 46, 46, 64)        1792      
                                                                 
 max_pooling2d_2 (MaxPooling  (None, 11, 11, 64)       0         
 2D)                                                             
                                                                 
 conv2d_4 (Conv2D)           (None, 9, 9, 32)          18464     
                                                                 
 max_pooling2d_3 (MaxPooling  (None, 4, 4, 32)         0         
 2D)                                                             
                                                                 
 conv2d_5 (Conv2D)           (None, 2, 2, 16)          4624      
                                                                 
 flatten_1 (Flatten)         (None, 64)                0         
                                                                 
 dense_2 (Dense)             (None, 32)                2080      
                                                                 
 dense_3 (Dense)             (None, 3)                 99        
                                                                 
=================================================================
Total params: 27,059
Trainable params: 27,059
Non-trainable params: 0
_________________________________________________________________

Model Summary in Graphical Form

In [16]:
from tensorflow.keras.utils import plot_model
plot_model(model, show_shapes=True, show_layer_names=True)
Out[16]:

Step 5: Implement EarlyStopping to cease training once threshold reaches 100 percent

In [17]:
import tensorflow as tf
from keras.callbacks import EarlyStopping, ModelCheckpoint

callback_earlyStopping = EarlyStopping(monitor='accuracy', baseline=1.0, patience=0)  

class ThresholdCallback(tf.keras.callbacks.Callback):
    def __init__(self, threshold):
        super(ThresholdCallback, self).__init__()
        self.threshold = threshold

    def on_epoch_end(self, epoch, logs=None): 
        accuracy = logs["accuracy"]
        if accuracy >= self.threshold:
            self.model.stop_training = True


callback=ThresholdCallback(threshold=1.0)
In [18]:
from tensorflow.keras.metrics import Recall, Precision
model.compile(optimizer='adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()])

Step 6: Train the model on one training set

In [19]:
history = model.fit(all_generator, epochs = 40, batch_size = 32, callbacks=[callback])
Epoch 1/40
300/300 [==============================] - 10s 26ms/step - loss: 0.8034 - accuracy: 0.6018 - precision_2: 0.7474 - recall_2: 0.4199
Epoch 2/40
300/300 [==============================] - 8s 27ms/step - loss: 0.4633 - accuracy: 0.8180 - precision_2: 0.8459 - recall_2: 0.7880
Epoch 3/40
300/300 [==============================] - 8s 28ms/step - loss: 0.3535 - accuracy: 0.8648 - precision_2: 0.8863 - recall_2: 0.8523
Epoch 4/40
300/300 [==============================] - 7s 24ms/step - loss: 0.3157 - accuracy: 0.8765 - precision_2: 0.8894 - recall_2: 0.8656
Epoch 5/40
300/300 [==============================] - 8s 27ms/step - loss: 0.2973 - accuracy: 0.8865 - precision_2: 0.8981 - recall_2: 0.8756
Epoch 6/40
300/300 [==============================] - 8s 27ms/step - loss: 0.2475 - accuracy: 0.9057 - precision_2: 0.9118 - recall_2: 0.8973
Epoch 7/40
300/300 [==============================] - 7s 25ms/step - loss: 0.2477 - accuracy: 0.9174 - precision_2: 0.9252 - recall_2: 0.9090
Epoch 8/40
300/300 [==============================] - 8s 28ms/step - loss: 0.2075 - accuracy: 0.9265 - precision_2: 0.9298 - recall_2: 0.9182
Epoch 9/40
300/300 [==============================] - 7s 24ms/step - loss: 0.1787 - accuracy: 0.9416 - precision_2: 0.9452 - recall_2: 0.9366
Epoch 10/40
300/300 [==============================] - 8s 28ms/step - loss: 0.1308 - accuracy: 0.9533 - precision_2: 0.9588 - recall_2: 0.9516
Epoch 11/40
300/300 [==============================] - 8s 28ms/step - loss: 0.1175 - accuracy: 0.9558 - precision_2: 0.9573 - recall_2: 0.9541
Epoch 12/40
300/300 [==============================] - 8s 25ms/step - loss: 0.1321 - accuracy: 0.9533 - precision_2: 0.9563 - recall_2: 0.9491
Epoch 13/40
300/300 [==============================] - 7s 24ms/step - loss: 0.1065 - accuracy: 0.9633 - precision_2: 0.9656 - recall_2: 0.9599
Epoch 14/40
300/300 [==============================] - 8s 27ms/step - loss: 0.1020 - accuracy: 0.9641 - precision_2: 0.9689 - recall_2: 0.9624
Epoch 15/40
300/300 [==============================] - 8s 28ms/step - loss: 0.0692 - accuracy: 0.9766 - precision_2: 0.9774 - recall_2: 0.9741
Epoch 16/40
300/300 [==============================] - 7s 24ms/step - loss: 0.0724 - accuracy: 0.9758 - precision_2: 0.9766 - recall_2: 0.9758
Epoch 17/40
300/300 [==============================] - 8s 28ms/step - loss: 0.0458 - accuracy: 0.9850 - precision_2: 0.9866 - recall_2: 0.9850
Epoch 18/40
300/300 [==============================] - 8s 27ms/step - loss: 0.0463 - accuracy: 0.9883 - precision_2: 0.9899 - recall_2: 0.9866
Epoch 19/40
300/300 [==============================] - 7s 24ms/step - loss: 0.1073 - accuracy: 0.9624 - precision_2: 0.9640 - recall_2: 0.9616
Epoch 20/40
300/300 [==============================] - 8s 27ms/step - loss: 0.0507 - accuracy: 0.9833 - precision_2: 0.9841 - recall_2: 0.9825
Epoch 21/40
300/300 [==============================] - 8s 27ms/step - loss: 0.0207 - accuracy: 0.9967 - precision_2: 0.9967 - recall_2: 0.9958
Epoch 22/40
300/300 [==============================] - 7s 24ms/step - loss: 0.0391 - accuracy: 0.9891 - precision_2: 0.9891 - recall_2: 0.9891
Epoch 23/40
300/300 [==============================] - 8s 28ms/step - loss: 0.0562 - accuracy: 0.9783 - precision_2: 0.9799 - recall_2: 0.9775
Epoch 24/40
300/300 [==============================] - 8s 27ms/step - loss: 0.0248 - accuracy: 0.9925 - precision_2: 0.9925 - recall_2: 0.9925
Epoch 25/40
300/300 [==============================] - 7s 24ms/step - loss: 0.0135 - accuracy: 0.9967 - precision_2: 0.9967 - recall_2: 0.9967
Epoch 26/40
300/300 [==============================] - 7s 24ms/step - loss: 0.0026 - accuracy: 1.0000 - precision_2: 1.0000 - recall_2: 1.0000

Step 7: Display the learning curve of the data not having been split

In [21]:
plt.subplots_adjust(right=1.95, left=.03)

plt.subplot(1,3,1)
plt.plot(history.history['accuracy'])
#plt.plot(history.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")

plt.subplot(1,3,2)
plt.plot(history.history['precision_2'])
#plt.plot(history.history['val_precision'])
plt.ylabel('Precision')
plt.xlabel('Epoch')

plt.subplot(1,3,3)
plt.plot(history.history['recall_2'])
#plt.plot(history.history['val_recall'])
plt.ylabel('Recall')
plt.xlabel('')


plt.show()
In [29]:
test_loss, test_acc, test_precision, test_recall = model.evaluate(all_generator)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
300/300 [==============================] - 8s 27ms/step - loss: 0.0012 - accuracy: 1.0000 - precision_2: 1.0000 - recall_2: 1.0000
validation_acc:  100.00
validation_loss: 0.00
validation_precision: 1.00
validation_recall: 1.00

Create a model with less parameters

In [30]:
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Conv2D, Flatten
from tensorflow.keras import datasets, layers, models

model2 = models.Sequential()
model2.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', input_shape = (48, 48, 3) ) )
model2.add(layers.MaxPooling2D(4, 4) )
model2.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model2.add(layers.MaxPooling2D(2, 2) )
model2.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model2.add( Flatten() )
model2.add( Dense( 32, activation = 'relu' ) )
model2.add( Dense( 3, activation = 'softmax' ) )
model2.summary()
Model: "sequential_2"
_________________________________________________________________
 Layer (type)                Output Shape              Param #   
=================================================================
 conv2d_6 (Conv2D)           (None, 46, 46, 32)        896       
                                                                 
 max_pooling2d_4 (MaxPooling  (None, 11, 11, 32)       0         
 2D)                                                             
                                                                 
 conv2d_7 (Conv2D)           (None, 9, 9, 16)          4624      
                                                                 
 max_pooling2d_5 (MaxPooling  (None, 4, 4, 16)         0         
 2D)                                                             
                                                                 
 conv2d_8 (Conv2D)           (None, 2, 2, 8)           1160      
                                                                 
 flatten_2 (Flatten)         (None, 32)                0         
                                                                 
 dense_4 (Dense)             (None, 32)                1056      
                                                                 
 dense_5 (Dense)             (None, 3)                 99        
                                                                 
=================================================================
Total params: 7,835
Trainable params: 7,835
Non-trainable params: 0
_________________________________________________________________
In [31]:
model2.compile(optimizer='adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()])
history2 = model2.fit(all_generator, epochs = 40, batch_size = 32, callbacks=[callback])
Epoch 1/40
300/300 [==============================] - 10s 25ms/step - loss: 0.8275 - accuracy: 0.5927 - precision_3: 0.7245 - recall_3: 0.3907
Epoch 2/40
300/300 [==============================] - 9s 28ms/step - loss: 0.5205 - accuracy: 0.7821 - precision_3: 0.8095 - recall_3: 0.7379
Epoch 3/40
300/300 [==============================] - 8s 28ms/step - loss: 0.4250 - accuracy: 0.8306 - precision_3: 0.8501 - recall_3: 0.8097
Epoch 4/40
300/300 [==============================] - 9s 29ms/step - loss: 0.3561 - accuracy: 0.8573 - precision_3: 0.8691 - recall_3: 0.8422
Epoch 5/40
300/300 [==============================] - 8s 27ms/step - loss: 0.3219 - accuracy: 0.8731 - precision_3: 0.8844 - recall_3: 0.8623
Epoch 6/40
300/300 [==============================] - 8s 27ms/step - loss: 0.2872 - accuracy: 0.8907 - precision_3: 0.9013 - recall_3: 0.8840
Epoch 7/40
300/300 [==============================] - 8s 28ms/step - loss: 0.2759 - accuracy: 0.8898 - precision_3: 0.9065 - recall_3: 0.8823
Epoch 8/40
300/300 [==============================] - 8s 28ms/step - loss: 0.2468 - accuracy: 0.8998 - precision_3: 0.9120 - recall_3: 0.8915
Epoch 9/40
300/300 [==============================] - 7s 24ms/step - loss: 0.2313 - accuracy: 0.9124 - precision_3: 0.9195 - recall_3: 0.9057
Epoch 10/40
300/300 [==============================] - 7s 24ms/step - loss: 0.2154 - accuracy: 0.9149 - precision_3: 0.9229 - recall_3: 0.9098
Epoch 11/40
300/300 [==============================] - 7s 24ms/step - loss: 0.1863 - accuracy: 0.9282 - precision_3: 0.9322 - recall_3: 0.9182
Epoch 12/40
300/300 [==============================] - 8s 28ms/step - loss: 0.1899 - accuracy: 0.9224 - precision_3: 0.9329 - recall_3: 0.9174
Epoch 13/40
300/300 [==============================] - 7s 25ms/step - loss: 0.1756 - accuracy: 0.9299 - precision_3: 0.9389 - recall_3: 0.9240
Epoch 14/40
300/300 [==============================] - 7s 24ms/step - loss: 0.1590 - accuracy: 0.9457 - precision_3: 0.9493 - recall_3: 0.9382
Epoch 15/40
300/300 [==============================] - 8s 28ms/step - loss: 0.1240 - accuracy: 0.9558 - precision_3: 0.9588 - recall_3: 0.9516
Epoch 16/40
300/300 [==============================] - 9s 29ms/step - loss: 0.1253 - accuracy: 0.9541 - precision_3: 0.9571 - recall_3: 0.9508
Epoch 17/40
300/300 [==============================] - 8s 27ms/step - loss: 0.1194 - accuracy: 0.9541 - precision_3: 0.9556 - recall_3: 0.9516
Epoch 18/40
300/300 [==============================] - 8s 27ms/step - loss: 0.0884 - accuracy: 0.9683 - precision_3: 0.9715 - recall_3: 0.9658
Epoch 19/40
300/300 [==============================] - 8s 28ms/step - loss: 0.1103 - accuracy: 0.9549 - precision_3: 0.9580 - recall_3: 0.9524
Epoch 20/40
300/300 [==============================] - 7s 24ms/step - loss: 0.0949 - accuracy: 0.9674 - precision_3: 0.9706 - recall_3: 0.9658
Epoch 21/40
300/300 [==============================] - 8s 28ms/step - loss: 0.0630 - accuracy: 0.9758 - precision_3: 0.9766 - recall_3: 0.9758
Epoch 22/40
300/300 [==============================] - 8s 28ms/step - loss: 0.0805 - accuracy: 0.9708 - precision_3: 0.9731 - recall_3: 0.9674
Epoch 23/40
300/300 [==============================] - 8s 26ms/step - loss: 0.0644 - accuracy: 0.9758 - precision_3: 0.9758 - recall_3: 0.9758
Epoch 24/40
300/300 [==============================] - 7s 24ms/step - loss: 0.0442 - accuracy: 0.9841 - precision_3: 0.9849 - recall_3: 0.9825
Epoch 25/40
300/300 [==============================] - 7s 25ms/step - loss: 0.0764 - accuracy: 0.9775 - precision_3: 0.9774 - recall_3: 0.9766
Epoch 26/40
300/300 [==============================] - 8s 27ms/step - loss: 0.0463 - accuracy: 0.9850 - precision_3: 0.9850 - recall_3: 0.9850
Epoch 27/40
300/300 [==============================] - 8s 27ms/step - loss: 0.0273 - accuracy: 0.9891 - precision_3: 0.9900 - recall_3: 0.9883
Epoch 28/40
300/300 [==============================] - 8s 26ms/step - loss: 0.0235 - accuracy: 0.9933 - precision_3: 0.9933 - recall_3: 0.9925
Epoch 29/40
300/300 [==============================] - 7s 24ms/step - loss: 0.0706 - accuracy: 0.9775 - precision_3: 0.9783 - recall_3: 0.9766
Epoch 30/40
300/300 [==============================] - 7s 24ms/step - loss: 0.0405 - accuracy: 0.9875 - precision_3: 0.9875 - recall_3: 0.9858
Epoch 31/40
300/300 [==============================] - 8s 28ms/step - loss: 0.0145 - accuracy: 0.9950 - precision_3: 0.9950 - recall_3: 0.9942
Epoch 32/40
300/300 [==============================] - 8s 26ms/step - loss: 0.0203 - accuracy: 0.9925 - precision_3: 0.9925 - recall_3: 0.9925
Epoch 33/40
300/300 [==============================] - 8s 26ms/step - loss: 0.0049 - accuracy: 1.0000 - precision_3: 1.0000 - recall_3: 1.0000
In [33]:
plt.subplots_adjust(right=1.95, left=.03)

plt.subplot(1,3,1)
plt.plot(history2.history['accuracy'])
#plt.plot(history.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")

plt.subplot(1,3,2)
plt.plot(history2.history['precision_3'])
#plt.plot(history.history['val_precision'])
plt.ylabel('Precision')
plt.xlabel('Epoch')

plt.subplot(1,3,3)
plt.plot(history2.history['recall_3'])
#plt.plot(history.history['val_recall'])
plt.ylabel('Recall')
plt.xlabel('')


plt.show()
In [34]:
test_loss, test_acc, test_precision, test_recall = model2.evaluate(all_generator)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
300/300 [==============================] - 8s 24ms/step - loss: 0.0025 - accuracy: 1.0000 - precision_3: 1.0000 - recall_3: 1.0000
validation_acc:  100.00
validation_loss: 0.00
validation_precision: 1.00
validation_recall: 1.00

Task 2: Split and Evaluate on Test Set

Load and Split the data into 3 groups: training, validation, and testing

In [35]:
! unzip bears_ws.zip
Archive:  bears_ws.zip
   creating: bears/
  inflating: bears/.DS_Store         
  inflating: __MACOSX/bears/._.DS_Store  
   creating: bears/test/
   creating: bears/training/
   creating: bears/validation/
   creating: bears/test/polar/
  inflating: bears/test/.DS_Store    
  inflating: __MACOSX/bears/test/._.DS_Store  
   creating: bears/test/panda/
   creating: bears/test/grizzly/
   creating: bears/training/polar/
  inflating: bears/training/.DS_Store  
  inflating: __MACOSX/bears/training/._.DS_Store  
   creating: bears/training/panda/
   creating: bears/training/grizzly/
   creating: bears/validation/polar/
  inflating: bears/validation/.DS_Store  
  inflating: __MACOSX/bears/validation/._.DS_Store  
   creating: bears/validation/panda/
   creating: bears/validation/grizzly/
  inflating: bears/test/polar/polar_1198.jpg  
  inflating: bears/test/polar/polar_1167.jpg  
  inflating: bears/test/polar/polar_1359.jpg  
  inflating: bears/test/polar/polar_1012.jpg  
  inflating: bears/test/polar/polar_1158.jpg  
  inflating: bears/test/polar/polar_1400.jpg  
  inflating: bears/test/polar/polar_1039.jpg  
  inflating: bears/test/polar/polar_1207.jpg  
  inflating: bears/test/polar/polar_1213.jpg  
  inflating: bears/test/polar/polar_1367.jpg  
  inflating: bears/test/polar/polar_1171.jpg  
  inflating: bears/test/polar/polar_1363.png  
  inflating: bears/test/polar/polar_1175.jpg  
  inflating: bears/test/polar/polar_1203.jpg  
  inflating: bears/test/polar/polar_1000.jpg  
  inflating: bears/test/polar/polar_1202.jpg  
  inflating: bears/test/polar/polar_1162.jpg  
  inflating: bears/test/polar/polar_1406.jpg  
  inflating: bears/test/polar/polar_1002.jpg  
  inflating: bears/test/polar/polar_1229.png  
  inflating: bears/test/polar/polar_1163.jpg  
  inflating: bears/test/polar/polar_1361.png  
  inflating: bears/test/polar/polar_1138.jpg  
  inflating: bears/test/polar/polar_1299.jpg  
  inflating: bears/test/polar/polar_1058.jpg  
  inflating: bears/test/polar/polar_1313.jpg  
  inflating: bears/test/polar/polar_1113.jpg  
  inflating: bears/test/polar/polar_1339.jpg  
  inflating: bears/test/polar/polar_1311.jpg  
  inflating: bears/test/polar/polar_1066.jpg  
  inflating: bears/test/polar/polar_1310.jpg  
  inflating: bears/test/polar/polar_1338.jpg  
  inflating: bears/test/polar/polar_1300.jpg  
  inflating: bears/test/polar/polar_1089.jpg  
  inflating: bears/test/polar/polar_1077.jpg  
  inflating: bears/test/polar/polar_1088.jpg  
  inflating: bears/test/polar/polar_1301.jpg  
  inflating: bears/test/polar/polar_1117.jpg  
  inflating: bears/test/polar/polar_1317.jpg  
  inflating: bears/test/polar/polar_1074.jpg  
  inflating: bears/test/polar/polar_1114.jpg  
  inflating: bears/test/polar/polar_1333.jpg  
  inflating: bears/test/polar/polar_1092.jpg  
  inflating: bears/test/polar/polar_1045.jpg  
  inflating: bears/test/polar/polar_1044.jpg  
  inflating: bears/test/polar/polar_1078.jpg  
  inflating: bears/test/polar/polar_1246.jpg  
  inflating: bears/test/polar/polar_1124.jpg  
  inflating: bears/test/polar/polar_1132.jpg  
  inflating: bears/test/polar/polar_1324.jpg  
  inflating: bears/test/polar/polar_1293.jpg  
  inflating: bears/test/polar/polar_1278.jpg  
  inflating: bears/test/polar/polar_1046.jpg  
  inflating: bears/test/polar/polar_1319.jpg  
  inflating: bears/test/polar/polar_1127.jpg  
  inflating: bears/test/polar/polar_1137.jpg  
  inflating: bears/test/polar/polar_1057.jpg  
  inflating: bears/test/polar/polar_1056.jpg  
  inflating: bears/test/polar/polar_1297.jpg  
  inflating: bears/test/polar/polar_1334.jpg  
  inflating: bears/test/polar/polar_1120.jpg  
  inflating: bears/test/polar/polar_1041.jpg  
  inflating: bears/test/polar/polar_1096.jpg  
  inflating: bears/test/polar/polar_1294.jpg  
  inflating: bears/test/polar/polar_1337.jpg  
  inflating: bears/test/polar/polar_1378.jpg  
  inflating: bears/test/polar/polar_1379.jpg  
  inflating: bears/test/polar/polar_1386.jpg  
  inflating: bears/test/polar/polar_1392.jpg  
  inflating: bears/test/polar/polar_1153.jpg  
  inflating: bears/test/polar/polar_1233.jpg  
  inflating: bears/test/polar/polar_1391.jpg  
  inflating: bears/test/polar/polar_1008.jpg  
  inflating: bears/test/polar/polar_1035.jpg  
  inflating: bears/test/polar/polar_1237.jpg  
  inflating: bears/test/polar/polar_1357.jpg  
  inflating: bears/test/polar/polar_1343.jpg  
  inflating: bears/test/polar/polar_1141.jpg  
  inflating: bears/test/polar/polar_1157.jpg  
  inflating: bears/test/polar/polar_1355.jpg  
  inflating: bears/test/polar/polar_1369.jpg  
  inflating: bears/test/polar/polar_1235.jpg  
  inflating: bears/test/polar/polar_1022.jpg  
  inflating: bears/test/polar/polar_1181.jpg  
  inflating: bears/test/polar/polar_1195.jpg  
  inflating: bears/test/panda/panda_1167.jpg  
  inflating: bears/test/panda/panda_1007.jpg  
  inflating: bears/test/panda/panda_1012.jpg  
  inflating: bears/test/panda/panda_1170.jpg  
  inflating: bears/test/panda/panda_1011.jpg  
  inflating: bears/test/panda/panda_1401.jpg  
  inflating: bears/test/panda/panda_1171.jpg  
  inflating: bears/test/panda/panda_1377.jpg  
  inflating: bears/test/panda/panda_1203.jpg  
  inflating: bears/test/panda/panda_1216.jpg  
  inflating: bears/test/panda/panda_1174.jpg  
  inflating: bears/test/panda/panda_1200.jpg  
  inflating: bears/test/panda/panda_1016.jpg  
  inflating: bears/test/panda/panda_1002.jpg  
  inflating: bears/test/panda/panda_1375.jpg  
  inflating: bears/test/panda/panda_1361.jpg  
  inflating: bears/test/panda/panda_1138.jpg  
  inflating: bears/test/panda/panda_1266.jpg  
  inflating: bears/test/panda/panda_1070.jpg  
  inflating: bears/test/panda/panda_1064.jpg  
  inflating: bears/test/panda/panda_1065.jpg  
  inflating: bears/test/panda/panda_1059.jpg  
  inflating: bears/test/panda/panda_1298.jpg  
  inflating: bears/test/panda/panda_1267.jpg  
  inflating: bears/test/panda/panda_1313.jpg  
  inflating: bears/test/panda/panda_1311.jpg  
  inflating: bears/test/panda/panda_1098.jpg  
  inflating: bears/test/panda/panda_1099.jpg  
  inflating: bears/test/panda/panda_1310.jpg  
  inflating: bears/test/panda/panda_1338.jpg  
  inflating: bears/test/panda/panda_1314.jpg  
  inflating: bears/test/panda/panda_1261.jpg  
  inflating: bears/test/panda/panda_1263.jpg  
  inflating: bears/test/panda/panda_1262.jpg  
  inflating: bears/test/panda/panda_1276.jpg  
  inflating: bears/test/panda/panda_1114.jpg  
  inflating: bears/test/panda/panda_1119.jpg  
  inflating: bears/test/panda/panda_1327.jpg  
  inflating: bears/test/panda/panda_1284.jpg  
  inflating: bears/test/panda/panda_1086.jpg  
  inflating: bears/test/panda/panda_1044.jpg  
  inflating: bears/test/panda/panda_1285.jpg  
  inflating: bears/test/panda/panda_1250.jpg  
  inflating: bears/test/panda/panda_1091.jpg  
  inflating: bears/test/panda/panda_1292.jpg  
  inflating: bears/test/panda/panda_1251.jpg  
  inflating: bears/test/panda/panda_1245.jpg  
  inflating: bears/test/panda/panda_1331.jpg  
  inflating: bears/test/panda/panda_1321.png  
  inflating: bears/test/panda/panda_1296.jpg  
  inflating: bears/test/panda/panda_1334.jpg  
  inflating: bears/test/panda/panda_1122.jpg  
  inflating: bears/test/panda/panda_1120.jpg  
  inflating: bears/test/panda/panda_1322.jpg  
  inflating: bears/test/panda/panda_1040.jpg  
  inflating: bears/test/panda/panda_1097.jpg  
  inflating: bears/test/panda/panda_1096.jpg  
  inflating: bears/test/panda/panda_1323.jpg  
  inflating: bears/test/panda/panda_1378.jpg  
  inflating: bears/test/panda/panda_1230.jpg  
  inflating: bears/test/panda/panda_1224.jpg  
  inflating: bears/test/panda/panda_1026.jpg  
  inflating: bears/test/panda/panda_1225.jpg  
  inflating: bears/test/panda/panda_1386.jpg  
  inflating: bears/test/panda/panda_1147.jpg  
  inflating: bears/test/panda/panda_1145.jpg  
  inflating: bears/test/panda/panda_1186.jpg  
  inflating: bears/test/panda/panda_1232.jpg  
  inflating: bears/test/panda/panda_1346.jpg  
  inflating: bears/test/panda/panda_1342.jpg  
  inflating: bears/test/panda/panda_1222.jpg  
  inflating: bears/test/panda/panda_1237.jpg  
  inflating: bears/test/panda/panda_1357.jpg  
  inflating: bears/test/panda/panda_1182.jpg  
  inflating: bears/test/panda/panda_1141.jpg  
  inflating: bears/test/panda/panda_1341.jpg  
  inflating: bears/test/panda/panda_1382.jpg  
  inflating: bears/test/panda/panda_1221.jpg  
  inflating: bears/test/panda/panda_1023.jpg  
  inflating: bears/test/panda/panda_1208.jpg  
  inflating: bears/test/panda/panda_1220.jpg  
  inflating: bears/test/panda/panda_1234.jpg  
  inflating: bears/test/panda/panda_1354.jpg  
  inflating: bears/test/panda/panda_1340.jpg  
  inflating: bears/test/panda/panda_1142.jpg  
  inflating: bears/test/grizzly/grizzly_1126.jpg  
  inflating: bears/test/grizzly/grizzly_1324.jpg  
  inflating: bears/test/grizzly/grizzly_1330.jpg  
  inflating: bears/test/grizzly/grizzly_1250.jpg  
  inflating: bears/test/grizzly/grizzly_1287.jpg  
  inflating: bears/test/grizzly/grizzly_1046.jpg  
  inflating: bears/test/grizzly/grizzly_1091.jpg  
  inflating: bears/test/grizzly/grizzly_1090.jpg  
  inflating: bears/test/grizzly/grizzly_1047.jpg  
  inflating: bears/test/grizzly/grizzly_1286.jpg  
  inflating: bears/test/grizzly/grizzly_1251.jpg  
  inflating: bears/test/grizzly/grizzly_1325.jpg  
  inflating: bears/test/grizzly/grizzly_1290.jpg  
  inflating: bears/test/grizzly/grizzly_1050.jpg  
  inflating: bears/test/grizzly/grizzly_1285.jpg  
  inflating: bears/test/grizzly/grizzly_1322.jpg  
  inflating: bears/test/grizzly/grizzly_1256.jpg  
  inflating: bears/test/grizzly/grizzly_1054.jpg  
  inflating: bears/test/grizzly/grizzly_1096.jpg  
  inflating: bears/test/grizzly/grizzly_1055.jpg  
  inflating: bears/test/grizzly/grizzly_1296.jpg  
  inflating: bears/test/grizzly/grizzly_1080.jpg  
  inflating: bears/test/grizzly/grizzly_1151.jpg  
  inflating: bears/test/grizzly/grizzly_1353.jpg  
  inflating: bears/test/grizzly/grizzly_1384.jpg  
  inflating: bears/test/grizzly/grizzly_1024.jpg  
  inflating: bears/test/grizzly/grizzly_1030.jpg  
  inflating: bears/test/grizzly/grizzly_1391.jpg  
  inflating: bears/test/grizzly/grizzly_1152.jpg  
  inflating: bears/test/grizzly/grizzly_1350.jpg  
  inflating: bears/test/grizzly/grizzly_1393.jpg  
  inflating: bears/test/grizzly/grizzly_1230.jpg  
  inflating: bears/test/grizzly/grizzly_1225.jpg  
  inflating: bears/test/grizzly/grizzly_1219.jpg  
  inflating: bears/test/grizzly/grizzly_1369.jpg  
  inflating: bears/test/grizzly/grizzly_1396.jpg  
  inflating: bears/test/grizzly/grizzly_1382.jpg  
  inflating: bears/test/grizzly/grizzly_1023.jpg  
  inflating: bears/test/grizzly/grizzly_1037.jpg  
  inflating: bears/test/grizzly/grizzly_1383.jpg  
  inflating: bears/test/grizzly/grizzly_1154.jpg  
  inflating: bears/test/grizzly/grizzly_1168.jpg  
  inflating: bears/test/grizzly/grizzly_1236.jpg  
  inflating: bears/test/grizzly/grizzly_1008.jpg  
  inflating: bears/test/grizzly/grizzly_1158.jpg  
  inflating: bears/test/grizzly/grizzly_1372.jpg  
  inflating: bears/test/grizzly/grizzly_1038.jpg  
  inflating: bears/test/grizzly/grizzly_1004.jpg  
  inflating: bears/test/grizzly/grizzly_1005.jpg  
  inflating: bears/test/grizzly/grizzly_1213.jpg  
  inflating: bears/test/grizzly/grizzly_1373.jpg  
  inflating: bears/test/grizzly/grizzly_1173.jpg  
  inflating: bears/test/grizzly/grizzly_1198.jpg  
  inflating: bears/test/grizzly/grizzly_1199.jpg  
  inflating: bears/test/grizzly/grizzly_1162.jpg  
  inflating: bears/test/grizzly/grizzly_1003.jpg  
  inflating: bears/test/grizzly/grizzly_1188.jpg  
  inflating: bears/test/grizzly/grizzly_1163.jpg  
  inflating: bears/test/grizzly/grizzly_1161.jpg  
  inflating: bears/test/grizzly/grizzly_1377.jpg  
  inflating: bears/test/grizzly/grizzly_1000.jpg  
  inflating: bears/test/grizzly/grizzly_1311.jpg  
  inflating: bears/test/grizzly/grizzly_1259.jpg  
  inflating: bears/test/grizzly/grizzly_1307.jpg  
  inflating: bears/test/grizzly/grizzly_1105.jpg  
  inflating: bears/test/grizzly/grizzly_1317.jpg  
  inflating: bears/test/grizzly/grizzly_1060.jpg  
  inflating: bears/test/grizzly/grizzly_1114.jpg  
  inflating: bears/test/grizzly/grizzly_1076.jpg  
  inflating: bears/test/grizzly/grizzly_1103.jpg  
  inflating: bears/training/polar/polar_1173.jpg  
  inflating: bears/training/polar/polar_1371.jpg  
  inflating: bears/training/polar/polar_1403.jpg  
  inflating: bears/training/polar/polar_1239.jpg  
  inflating: bears/training/polar/polar_1205.jpg  
  inflating: bears/training/polar/polar_1007.jpg  
  inflating: bears/training/polar/polar_1013.jpg  
  inflating: bears/training/polar/polar_1006.jpg  
  inflating: bears/training/polar/polar_1210.jpg  
  inflating: bears/training/polar/polar_1238.jpg  
  inflating: bears/training/polar/polar_1402.jpg  
  inflating: bears/training/polar/polar_1364.jpg  
  inflating: bears/training/polar/polar_1370.jpg  
  inflating: bears/training/polar/polar_1358.jpg  
  inflating: bears/training/polar/polar_1166.jpg  
  inflating: bears/training/polar/polar_1172.jpg  
  inflating: bears/training/polar/polar_1199.jpg  
  inflating: bears/training/polar/polar_1399.jpg  
  inflating: bears/training/polar/polar_1366.jpg  
  inflating: bears/training/polar/polar_1372.jpg  
  inflating: bears/training/polar/polar_1038.jpg  
  inflating: bears/training/polar/polar_1010.jpg  
  inflating: bears/training/polar/polar_1004.jpg  
  inflating: bears/training/polar/polar_1005.jpg  
  inflating: bears/training/polar/polar_1011.jpg  
  inflating: bears/training/polar/polar_1373.jpg  
  inflating: bears/training/polar/polar_1401.jpg  
  inflating: bears/training/polar/polar_1398.jpg  
  inflating: bears/training/polar/polar_1165.jpg  
  inflating: bears/training/polar/polar_1405.jpg  
  inflating: bears/training/polar/polar_1377.jpg  
  inflating: bears/training/polar/polar_1411.jpg  
  inflating: bears/training/polar/polar_1217.jpg  
  inflating: bears/training/polar/polar_1015.jpg  
  inflating: bears/training/polar/polar_1001.jpg  
  inflating: bears/training/polar/polar_1029.jpg  
  inflating: bears/training/polar/polar_1014.jpg  
  inflating: bears/training/polar/polar_1216.jpg  
  inflating: bears/training/polar/polar_1410.jpg  
  inflating: bears/training/polar/polar_1404.jpg  
  inflating: bears/training/polar/polar_1362.jpg  
  inflating: bears/training/polar/polar_1389.jpg  
  inflating: bears/training/polar/polar_1148.jpg  
  inflating: bears/training/polar/polar_1174.jpg  
  inflating: bears/training/polar/polar_1360.png  
  inflating: bears/training/polar/polar_1189.jpg  
  inflating: bears/training/polar/polar_1348.png  
  inflating: bears/training/polar/polar_1176.jpg  
  inflating: bears/training/polar/polar_1374.jpg  
  inflating: bears/training/polar/polar_1200.jpg  
  inflating: bears/training/polar/polar_1214.jpg  
  inflating: bears/training/polar/polar_1228.jpg  
  inflating: bears/training/polar/polar_1016.jpg  
  inflating: bears/training/polar/polar_1003.jpg  
  inflating: bears/training/polar/polar_1215.jpg  
  inflating: bears/training/polar/polar_1201.jpg  
  inflating: bears/training/polar/polar_1349.jpg  
  inflating: bears/training/polar/polar_1407.jpg  
  inflating: bears/training/polar/polar_1375.jpg  
  inflating: bears/training/polar/polar_1177.jpg  
  inflating: bears/training/polar/polar_1188.jpg  
  inflating: bears/training/polar/polar_1312.jpg  
  inflating: bears/training/polar/polar_1306.jpg  
  inflating: bears/training/polar/polar_1266.jpg  
  inflating: bears/training/polar/polar_1272.jpg  
  inflating: bears/training/polar/polar_1064.jpg  
  inflating: bears/training/polar/polar_1070.jpg  
  inflating: bears/training/polar/polar_1071.jpg  
  inflating: bears/training/polar/polar_1065.jpg  
  inflating: bears/training/polar/polar_1059.jpg  
  inflating: bears/training/polar/polar_1273.jpg  
  inflating: bears/training/polar/polar_1267.jpg  
  inflating: bears/training/polar/polar_1298.jpg  
  inflating: bears/training/polar/polar_1105.jpg  
  inflating: bears/training/polar/polar_1111.jpg  
  inflating: bears/training/polar/polar_1139.jpg  
  inflating: bears/training/polar/polar_1107.jpg  
  inflating: bears/training/polar/polar_1259.jpg  
  inflating: bears/training/polar/polar_1271.jpg  
  inflating: bears/training/polar/polar_1265.jpg  
  inflating: bears/training/polar/polar_1098.jpg  
  inflating: bears/training/polar/polar_1073.jpg  
  inflating: bears/training/polar/polar_1067.jpg  
  inflating: bears/training/polar/polar_1099.jpg  
  inflating: bears/training/polar/polar_1264.jpg  
  inflating: bears/training/polar/polar_1270.jpg  
  inflating: bears/training/polar/polar_1258.jpg  
  inflating: bears/training/polar/polar_1304.jpg  
  inflating: bears/training/polar/polar_1112.jpg  
  inflating: bears/training/polar/polar_1106.jpg  
  inflating: bears/training/polar/polar_1102.jpg  
  inflating: bears/training/polar/polar_1314.jpg  
  inflating: bears/training/polar/polar_1076.jpg  
  inflating: bears/training/polar/polar_1062.jpg  
  inflating: bears/training/polar/polar_1063.jpg  
  inflating: bears/training/polar/polar_1249.jpg  
  inflating: bears/training/polar/polar_1261.jpg  
  inflating: bears/training/polar/polar_1275.jpg  
  inflating: bears/training/polar/polar_1329.jpg  
  inflating: bears/training/polar/polar_1315.jpg  
  inflating: bears/training/polar/polar_1103.jpg  
  inflating: bears/training/polar/polar_1115.jpg  
  inflating: bears/training/polar/polar_1101.jpg  
  inflating: bears/training/polar/polar_1303.jpg  
  inflating: bears/training/polar/polar_1288.jpg  
  inflating: bears/training/polar/polar_1277.jpg  
  inflating: bears/training/polar/polar_1061.jpg  
  inflating: bears/training/polar/polar_1075.jpg  
  inflating: bears/training/polar/polar_1048.jpg  
  inflating: bears/training/polar/polar_1060.jpg  
  inflating: bears/training/polar/polar_1276.jpg  
  inflating: bears/training/polar/polar_1289.jpg  
  inflating: bears/training/polar/polar_1302.jpg  
  inflating: bears/training/polar/polar_1316.jpg  
  inflating: bears/training/polar/polar_1128.jpg  
  inflating: bears/training/polar/polar_1119.jpg  
  inflating: bears/training/polar/polar_1131.jpg  
  inflating: bears/training/polar/polar_1125.jpg  
  inflating: bears/training/polar/polar_1327.jpg  
  inflating: bears/training/polar/polar_1284.jpg  
  inflating: bears/training/polar/polar_1290.jpg  
  inflating: bears/training/polar/polar_1247.jpg  
  inflating: bears/training/polar/polar_1086.jpg  
  inflating: bears/training/polar/polar_1051.jpg  
  inflating: bears/training/polar/polar_1050.jpg  
  inflating: bears/training/polar/polar_1087.jpg  
  inflating: bears/training/polar/polar_1252.jpg  
  inflating: bears/training/polar/polar_1291.jpg  
  inflating: bears/training/polar/polar_1285.jpg  
  inflating: bears/training/polar/polar_1332.jpg  
  inflating: bears/training/polar/polar_1130.jpg  
  inflating: bears/training/polar/polar_1126.jpg  
  inflating: bears/training/polar/polar_1318.jpg  
  inflating: bears/training/polar/polar_1287.jpg  
  inflating: bears/training/polar/polar_1250.jpg  
  inflating: bears/training/polar/polar_1244.jpg  
  inflating: bears/training/polar/polar_1091.jpg  
  inflating: bears/training/polar/polar_1052.jpg  
  inflating: bears/training/polar/polar_1053.jpg  
  inflating: bears/training/polar/polar_1090.jpg  
  inflating: bears/training/polar/polar_1245.jpg  
  inflating: bears/training/polar/polar_1251.jpg  
  inflating: bears/training/polar/polar_1279.jpg  
  inflating: bears/training/polar/polar_1286.jpg  
  inflating: bears/training/polar/polar_1292.jpg  
  inflating: bears/training/polar/polar_1331.jpg  
  inflating: bears/training/polar/polar_1325.jpg  
  inflating: bears/training/polar/polar_1133.jpg  
  inflating: bears/training/polar/polar_1123.jpg  
  inflating: bears/training/polar/polar_1321.jpg  
  inflating: bears/training/polar/polar_1335.jpg  
  inflating: bears/training/polar/polar_1296.jpg  
  inflating: bears/training/polar/polar_1255.jpg  
  inflating: bears/training/polar/polar_1241.jpg  
  inflating: bears/training/polar/polar_1269.jpg  
  inflating: bears/training/polar/polar_1043.jpg  
  inflating: bears/training/polar/polar_1042.jpg  
  inflating: bears/training/polar/polar_1081.jpg  
  inflating: bears/training/polar/polar_1095.jpg  
  inflating: bears/training/polar/polar_1268.jpg  
  inflating: bears/training/polar/polar_1240.jpg  
  inflating: bears/training/polar/polar_1254.jpg  
  inflating: bears/training/polar/polar_1283.jpg  
  inflating: bears/training/polar/polar_1308.jpg  
  inflating: bears/training/polar/polar_1136.jpg  
  inflating: bears/training/polar/polar_1122.jpg  
  inflating: bears/training/polar/polar_1134.jpg  
  inflating: bears/training/polar/polar_1108.jpg  
  inflating: bears/training/polar/polar_1336.jpg  
  inflating: bears/training/polar/polar_1322.jpg  
  inflating: bears/training/polar/polar_1281.jpg  
  inflating: bears/training/polar/polar_1256.jpg  
  inflating: bears/training/polar/polar_1083.jpg  
  inflating: bears/training/polar/polar_1097.jpg  
  inflating: bears/training/polar/polar_1040.jpg  
  inflating: bears/training/polar/polar_1054.jpg  
  inflating: bears/training/polar/polar_1068.jpg  
  inflating: bears/training/polar/polar_1069.jpg  
  inflating: bears/training/polar/polar_1257.jpg  
  inflating: bears/training/polar/polar_1243.jpg  
  inflating: bears/training/polar/polar_1280.jpg  
  inflating: bears/training/polar/polar_1323.jpg  
  inflating: bears/training/polar/polar_1121.jpg  
  inflating: bears/training/polar/polar_1135.jpg  
  inflating: bears/training/polar/polar_1152.jpg  
  inflating: bears/training/polar/polar_1146.jpg  
  inflating: bears/training/polar/polar_1393.jpg  
  inflating: bears/training/polar/polar_1387.jpg  
  inflating: bears/training/polar/polar_1350.jpg  
  inflating: bears/training/polar/polar_1344.jpg  
  inflating: bears/training/polar/polar_1218.jpg  
  inflating: bears/training/polar/polar_1224.jpg  
  inflating: bears/training/polar/polar_1026.jpg  
  inflating: bears/training/polar/polar_1033.jpg  
  inflating: bears/training/polar/polar_1027.jpg  
  inflating: bears/training/polar/polar_1225.jpg  
  inflating: bears/training/polar/polar_1219.jpg  
  inflating: bears/training/polar/polar_1345.jpg  
  inflating: bears/training/polar/polar_1190.jpg  
  inflating: bears/training/polar/polar_1192.jpg  
  inflating: bears/training/polar/polar_1347.png  
  inflating: bears/training/polar/polar_1179.jpg  
  inflating: bears/training/polar/polar_1390.jpg  
  inflating: bears/training/polar/polar_1409.jpg  
  inflating: bears/training/polar/polar_1227.jpg  
  inflating: bears/training/polar/polar_1019.jpg  
  inflating: bears/training/polar/polar_1024.jpg  
  inflating: bears/training/polar/polar_1018.jpg  
  inflating: bears/training/polar/polar_1226.jpg  
  inflating: bears/training/polar/polar_1232.jpg  
  inflating: bears/training/polar/polar_1346.jpg  
  inflating: bears/training/polar/polar_1408.jpg  
  inflating: bears/training/polar/polar_1150.jpg  
  inflating: bears/training/polar/polar_1193.jpg  
  inflating: bears/training/polar/polar_1187.jpg  
  inflating: bears/training/polar/polar_1352.png  
  inflating: bears/training/polar/polar_1140.jpg  
  inflating: bears/training/polar/polar_1154.jpg  
  inflating: bears/training/polar/polar_1381.jpg  
  inflating: bears/training/polar/polar_1342.jpg  
  inflating: bears/training/polar/polar_1356.jpg  
  inflating: bears/training/polar/polar_1236.jpg  
  inflating: bears/training/polar/polar_1034.jpg  
  inflating: bears/training/polar/polar_1020.jpg  
  inflating: bears/training/polar/polar_1009.jpg  
  inflating: bears/training/polar/polar_1021.jpg  
  inflating: bears/training/polar/polar_1223.jpg  
  inflating: bears/training/polar/polar_1155.jpg  
  inflating: bears/training/polar/polar_1196.jpg  
  inflating: bears/training/polar/polar_1182.jpg  
  inflating: bears/training/polar/polar_1194.jpg  
  inflating: bears/training/polar/polar_1180.jpg  
  inflating: bears/training/polar/polar_1143.jpg  
  inflating: bears/training/polar/polar_1382.jpg  
  inflating: bears/training/polar/polar_1341.jpg  
  inflating: bears/training/polar/polar_1221.jpg  
  inflating: bears/training/polar/polar_1209.jpg  
  inflating: bears/training/polar/polar_1037.jpg  
  inflating: bears/training/polar/polar_1036.jpg  
  inflating: bears/training/polar/polar_1208.jpg  
  inflating: bears/training/polar/polar_1234.jpg  
  inflating: bears/training/polar/polar_1220.jpg  
  inflating: bears/training/polar/polar_1368.jpg  
  inflating: bears/training/polar/polar_1383.jpg  
  inflating: bears/training/polar/polar_1397.jpg  
  inflating: bears/training/polar/polar_1142.jpg  
  inflating: bears/training/polar/polar_1156.jpg  
  inflating: bears/training/polar/polar_1354.png  
  inflating: bears/training/panda/panda_1173.jpg  
  inflating: bears/training/panda/panda_1198.jpg  
  inflating: bears/training/panda/panda_1359.jpg  
  inflating: bears/training/panda/panda_1365.jpg  
  inflating: bears/training/panda/panda_1371.jpg  
  inflating: bears/training/panda/panda_1239.jpg  
  inflating: bears/training/panda/panda_1211.jpg  
  inflating: bears/training/panda/panda_1013.jpg  
  inflating: bears/training/panda/panda_1006.jpg  
  inflating: bears/training/panda/panda_1204.jpg  
  inflating: bears/training/panda/panda_1210.jpg  
  inflating: bears/training/panda/panda_1238.jpg  
  inflating: bears/training/panda/panda_1402.jpg  
  inflating: bears/training/panda/panda_1364.jpg  
  inflating: bears/training/panda/panda_1358.jpg  
  inflating: bears/training/panda/panda_1199.jpg  
  inflating: bears/training/panda/panda_1172.jpg  
  inflating: bears/training/panda/panda_1166.jpg  
  inflating: bears/training/panda/panda_1164.jpg  
  inflating: bears/training/panda/panda_1372.jpg  
  inflating: bears/training/panda/panda_1366.jpg  
  inflating: bears/training/panda/panda_1400.jpg  
  inflating: bears/training/panda/panda_1399.jpg  
  inflating: bears/training/panda/panda_1206.jpg  
  inflating: bears/training/panda/panda_1212.jpg  
  inflating: bears/training/panda/panda_1038.jpg  
  inflating: bears/training/panda/panda_1010.jpg  
  inflating: bears/training/panda/panda_1005.jpg  
  inflating: bears/training/panda/panda_1039.jpg  
  inflating: bears/training/panda/panda_1213.jpg  
  inflating: bears/training/panda/panda_1398.jpg  
  inflating: bears/training/panda/panda_1367.jpg  
  inflating: bears/training/panda/panda_1373.jpg  
  inflating: bears/training/panda/panda_1165.jpg  
  inflating: bears/training/panda/panda_1159.jpg  
  inflating: bears/training/panda/panda_1175.jpg  
  inflating: bears/training/panda/panda_1363.jpg  
  inflating: bears/training/panda/panda_1217.jpg  
  inflating: bears/training/panda/panda_1001.jpg  
  inflating: bears/training/panda/panda_1029.jpg  
  inflating: bears/training/panda/panda_1014.jpg  
  inflating: bears/training/panda/panda_1000.jpg  
  inflating: bears/training/panda/panda_1202.jpg  
  inflating: bears/training/panda/panda_1389.jpg  
  inflating: bears/training/panda/panda_1362.jpg  
  inflating: bears/training/panda/panda_1376.jpg  
  inflating: bears/training/panda/panda_1160.jpg  
  inflating: bears/training/panda/panda_1176.jpg  
  inflating: bears/training/panda/panda_1189.jpg  
  inflating: bears/training/panda/panda_1374.jpg  
  inflating: bears/training/panda/panda_1214.jpg  
  inflating: bears/training/panda/panda_1228.jpg  
  inflating: bears/training/panda/panda_1017.jpg  
  inflating: bears/training/panda/panda_1229.jpg  
  inflating: bears/training/panda/panda_1201.jpg  
  inflating: bears/training/panda/panda_1349.jpg  
  inflating: bears/training/panda/panda_1188.jpg  
  inflating: bears/training/panda/panda_1177.jpg  
  inflating: bears/training/panda/panda_1163.jpg  
  inflating: bears/training/panda/panda_1104.jpg  
  inflating: bears/training/panda/panda_1110.jpg  
  inflating: bears/training/panda/panda_1306.jpg  
  inflating: bears/training/panda/panda_1312.jpg  
  inflating: bears/training/panda/panda_1272.jpg  
  inflating: bears/training/panda/panda_1299.jpg  
  inflating: bears/training/panda/panda_1058.jpg  
  inflating: bears/training/panda/panda_1071.jpg  
  inflating: bears/training/panda/panda_1273.jpg  
  inflating: bears/training/panda/panda_1307.jpg  
  inflating: bears/training/panda/panda_1111.jpg  
  inflating: bears/training/panda/panda_1105.jpg  
  inflating: bears/training/panda/panda_1139.jpg  
  inflating: bears/training/panda/panda_1113.jpg  
  inflating: bears/training/panda/panda_1107.jpg  
  inflating: bears/training/panda/panda_1305.jpg  
  inflating: bears/training/panda/panda_1259.jpg  
  inflating: bears/training/panda/panda_1265.jpg  
  inflating: bears/training/panda/panda_1271.jpg  
  inflating: bears/training/panda/panda_1067.jpg  
  inflating: bears/training/panda/panda_1072.jpg  
  inflating: bears/training/panda/panda_1066.jpg  
  inflating: bears/training/panda/panda_1270.jpg  
  inflating: bears/training/panda/panda_1264.jpg  
  inflating: bears/training/panda/panda_1258.jpg  
  inflating: bears/training/panda/panda_1106.jpg  
  inflating: bears/training/panda/panda_1116.jpg  
  inflating: bears/training/panda/panda_1300.jpg  
  inflating: bears/training/panda/panda_1260.jpg  
  inflating: bears/training/panda/panda_1274.jpg  
  inflating: bears/training/panda/panda_1248.jpg  
  inflating: bears/training/panda/panda_1062.jpg  
  inflating: bears/training/panda/panda_1076.jpg  
  inflating: bears/training/panda/panda_1088.jpg  
  inflating: bears/training/panda/panda_1063.jpg  
  inflating: bears/training/panda/panda_1249.jpg  
  inflating: bears/training/panda/panda_1301.jpg  
  inflating: bears/training/panda/panda_1103.jpg  
  inflating: bears/training/panda/panda_1117.jpg  
  inflating: bears/training/panda/panda_1101.jpg  
  inflating: bears/training/panda/panda_1115.jpg  
  inflating: bears/training/panda/panda_1129.jpg  
  inflating: bears/training/panda/panda_1303.jpg  
  inflating: bears/training/panda/panda_1317.jpg  
  inflating: bears/training/panda/panda_1277.jpg  
  inflating: bears/training/panda/panda_1288.jpg  
  inflating: bears/training/panda/panda_1075.jpg  
  inflating: bears/training/panda/panda_1061.jpg  
  inflating: bears/training/panda/panda_1049.jpg  
  inflating: bears/training/panda/panda_1060.jpg  
  inflating: bears/training/panda/panda_1074.jpg  
  inflating: bears/training/panda/panda_1289.jpg  
  inflating: bears/training/panda/panda_1316.jpg  
  inflating: bears/training/panda/panda_1128.jpg  
  inflating: bears/training/panda/panda_1100.jpg  
  inflating: bears/training/panda/panda_1125.jpg  
  inflating: bears/training/panda/panda_1079.jpg  
  inflating: bears/training/panda/panda_1051.jpg  
  inflating: bears/training/panda/panda_1045.jpg  
  inflating: bears/training/panda/panda_1093.jpg  
  inflating: bears/training/panda/panda_1050.jpg  
  inflating: bears/training/panda/panda_1078.jpg  
  inflating: bears/training/panda/panda_1291.jpg  
  inflating: bears/training/panda/panda_1246.jpg  
  inflating: bears/training/panda/panda_1252.jpg  
  inflating: bears/training/panda/panda_1332.jpg  
  inflating: bears/training/panda/panda_1326.jpg  
  inflating: bears/training/panda/panda_1130.jpg  
  inflating: bears/training/panda/panda_1124.jpg  
  inflating: bears/training/panda/panda_1118.jpg  
  inflating: bears/training/panda/panda_1132.jpg  
  inflating: bears/training/panda/panda_1318.jpg  
  inflating: bears/training/panda/panda_1330.jpg  
  inflating: bears/training/panda/panda_1244.jpg  
  inflating: bears/training/panda/panda_1287.jpg  
  inflating: bears/training/panda/panda_1293.jpg  
  inflating: bears/training/panda/panda_1046.jpg  
  inflating: bears/training/panda/panda_1085.jpg  
  inflating: bears/training/panda/panda_1090.jpg  
  inflating: bears/training/panda/panda_1053.jpg  
  inflating: bears/training/panda/panda_1047.jpg  
  inflating: bears/training/panda/panda_1286.jpg  
  inflating: bears/training/panda/panda_1279.jpg  
  inflating: bears/training/panda/panda_1325.jpg  
  inflating: bears/training/panda/panda_1127.jpg  
  inflating: bears/training/panda/panda_1137.jpg  
  inflating: bears/training/panda/panda_1335.png  
  inflating: bears/training/panda/panda_1309.jpg  
  inflating: bears/training/panda/panda_1255.jpg  
  inflating: bears/training/panda/panda_1282.jpg  
  inflating: bears/training/panda/panda_1057.jpg  
  inflating: bears/training/panda/panda_1094.jpg  
  inflating: bears/training/panda/panda_1269.png  
  inflating: bears/training/panda/panda_1095.jpg  
  inflating: bears/training/panda/panda_1056.jpg  
  inflating: bears/training/panda/panda_1297.jpg  
  inflating: bears/training/panda/panda_1254.jpg  
  inflating: bears/training/panda/panda_1308.jpg  
  inflating: bears/training/panda/panda_1320.jpg  
  inflating: bears/training/panda/panda_1136.jpg  
  inflating: bears/training/panda/panda_1134.jpg  
  inflating: bears/training/panda/panda_1108.jpg  
  inflating: bears/training/panda/panda_1256.jpg  
  inflating: bears/training/panda/panda_1242.jpg  
  inflating: bears/training/panda/panda_1295.jpg  
  inflating: bears/training/panda/panda_1068.jpg  
  inflating: bears/training/panda/panda_1083.jpg  
  inflating: bears/training/panda/panda_1069.jpg  
  inflating: bears/training/panda/panda_1041.jpg  
  inflating: bears/training/panda/panda_1055.jpg  
  inflating: bears/training/panda/panda_1280.jpg  
  inflating: bears/training/panda/panda_1243.jpg  
  inflating: bears/training/panda/panda_1257.jpg  
  inflating: bears/training/panda/panda_1337.jpg  
  inflating: bears/training/panda/panda_1135.jpg  
  inflating: bears/training/panda/panda_1121.jpg  
  inflating: bears/training/panda/panda_1185.jpg  
  inflating: bears/training/panda/panda_1344.jpg  
  inflating: bears/training/panda/panda_1350.jpg  
  inflating: bears/training/panda/panda_1218.jpg  
  inflating: bears/training/panda/panda_1032.jpg  
  inflating: bears/training/panda/panda_1027.jpg  
  inflating: bears/training/panda/panda_1231.jpg  
  inflating: bears/training/panda/panda_1219.jpg  
  inflating: bears/training/panda/panda_1351.jpg  
  inflating: bears/training/panda/panda_1345.jpg  
  inflating: bears/training/panda/panda_1379.jpg  
  inflating: bears/training/panda/panda_1390.png  
  inflating: bears/training/panda/panda_1192.jpg  
  inflating: bears/training/panda/panda_1347.png  
  inflating: bears/training/panda/panda_1227.jpg  
  inflating: bears/training/panda/panda_1233.jpg  
  inflating: bears/training/panda/panda_1019.jpg  
  inflating: bears/training/panda/panda_1025.jpg  
  inflating: bears/training/panda/panda_1031.jpg  
  inflating: bears/training/panda/panda_1024.jpg  
  inflating: bears/training/panda/panda_1018.jpg  
  inflating: bears/training/panda/panda_1226.jpg  
  inflating: bears/training/panda/panda_1385.jpg  
  inflating: bears/training/panda/panda_1391.jpg  
  inflating: bears/training/panda/panda_1352.jpg  
  inflating: bears/training/panda/panda_1187.jpg  
  inflating: bears/training/panda/panda_1193.jpg  
  inflating: bears/training/panda/panda_1150.jpg  
  inflating: bears/training/panda/panda_1178.jpg  
  inflating: bears/training/panda/panda_1154.jpg  
  inflating: bears/training/panda/panda_1140.jpg  
  inflating: bears/training/panda/panda_1197.jpg  
  inflating: bears/training/panda/panda_1183.jpg  
  inflating: bears/training/panda/panda_1356.jpg  
  inflating: bears/training/panda/panda_1395.jpg  
  inflating: bears/training/panda/panda_1381.jpg  
  inflating: bears/training/panda/panda_1236.jpg  
  inflating: bears/training/panda/panda_1020.jpg  
  inflating: bears/training/panda/panda_1034.jpg  
  inflating: bears/training/panda/panda_1008.jpg  
  inflating: bears/training/panda/panda_1035.jpg  
  inflating: bears/training/panda/panda_1021.jpg  
  inflating: bears/training/panda/panda_1223.jpg  
  inflating: bears/training/panda/panda_1380.jpg  
  inflating: bears/training/panda/panda_1394.jpg  
  inflating: bears/training/panda/panda_1343.jpg  
  inflating: bears/training/panda/panda_1196.jpg  
  inflating: bears/training/panda/panda_1169.jpg  
  inflating: bears/training/panda/panda_1143.jpg  
  inflating: bears/training/panda/panda_1157.jpg  
  inflating: bears/training/panda/panda_1194.jpg  
  inflating: bears/training/panda/panda_1369.jpg  
  inflating: bears/training/panda/panda_1396.jpg  
  inflating: bears/training/panda/panda_1235.jpg  
  inflating: bears/training/panda/panda_1209.jpg  
  inflating: bears/training/panda/panda_1037.jpg  
  inflating: bears/training/panda/panda_1022.jpg  
  inflating: bears/training/panda/panda_1036.jpg  
  inflating: bears/training/panda/panda_1397.jpg  
  inflating: bears/training/panda/panda_1368.jpg  
  inflating: bears/training/panda/panda_1181.jpg  
  inflating: bears/training/panda/panda_1156.jpg  
  inflating: bears/training/grizzly/grizzly_1132.jpg  
  inflating: bears/training/grizzly/grizzly_1318.jpg  
  inflating: bears/training/grizzly/grizzly_1278.jpg  
  inflating: bears/training/grizzly/grizzly_1244.jpg  
  inflating: bears/training/grizzly/grizzly_1293.jpg  
  inflating: bears/training/grizzly/grizzly_1052.jpg  
  inflating: bears/training/grizzly/grizzly_1085.jpg  
  inflating: bears/training/grizzly/grizzly_1084.jpg  
  inflating: bears/training/grizzly/grizzly_1053.jpg  
  inflating: bears/training/grizzly/grizzly_1245.jpg  
  inflating: bears/training/grizzly/grizzly_1279.jpg  
  inflating: bears/training/grizzly/grizzly_1331.jpg  
  inflating: bears/training/grizzly/grizzly_1319.jpg  
  inflating: bears/training/grizzly/grizzly_1133.jpg  
  inflating: bears/training/grizzly/grizzly_1127.jpg  
  inflating: bears/training/grizzly/grizzly_1119.jpg  
  inflating: bears/training/grizzly/grizzly_1131.jpg  
  inflating: bears/training/grizzly/grizzly_1125.jpg  
  inflating: bears/training/grizzly/grizzly_1333.png  
  inflating: bears/training/grizzly/grizzly_1247.jpg  
  inflating: bears/training/grizzly/grizzly_1284.jpg  
  inflating: bears/training/grizzly/grizzly_1045.jpg  
  inflating: bears/training/grizzly/grizzly_1051.jpg  
  inflating: bears/training/grizzly/grizzly_1086.jpg  
  inflating: bears/training/grizzly/grizzly_1092.jpg  
  inflating: bears/training/grizzly/grizzly_1087.jpg  
  inflating: bears/training/grizzly/grizzly_1044.jpg  
  inflating: bears/training/grizzly/grizzly_1078.jpg  
  inflating: bears/training/grizzly/grizzly_1252.jpg  
  inflating: bears/training/grizzly/grizzly_1246.jpg  
  inflating: bears/training/grizzly/grizzly_1326.jpg  
  inflating: bears/training/grizzly/grizzly_1332.png  
  inflating: bears/training/grizzly/grizzly_1130.jpg  
  inflating: bears/training/grizzly/grizzly_1118.jpg  
  inflating: bears/training/grizzly/grizzly_1134.jpg  
  inflating: bears/training/grizzly/grizzly_1120.jpg  
  inflating: bears/training/grizzly/grizzly_1108.jpg  
  inflating: bears/training/grizzly/grizzly_1242.jpg  
  inflating: bears/training/grizzly/grizzly_1295.jpg  
  inflating: bears/training/grizzly/grizzly_1040.jpg  
  inflating: bears/training/grizzly/grizzly_1083.jpg  
  inflating: bears/training/grizzly/grizzly_1082.jpg  
  inflating: bears/training/grizzly/grizzly_1069.jpg  
  inflating: bears/training/grizzly/grizzly_1041.jpg  
  inflating: bears/training/grizzly/grizzly_1280.jpg  
  inflating: bears/training/grizzly/grizzly_1257.jpg  
  inflating: bears/training/grizzly/grizzly_1323.jpg  
  inflating: bears/training/grizzly/grizzly_1337.jpg  
  inflating: bears/training/grizzly/grizzly_1109.jpg  
  inflating: bears/training/grizzly/grizzly_1135.jpg  
  inflating: bears/training/grizzly/grizzly_1123.jpg  
  inflating: bears/training/grizzly/grizzly_1321.jpg  
  inflating: bears/training/grizzly/grizzly_1335.jpg  
  inflating: bears/training/grizzly/grizzly_1309.jpg  
  inflating: bears/training/grizzly/grizzly_1255.jpg  
  inflating: bears/training/grizzly/grizzly_1269.jpg  
  inflating: bears/training/grizzly/grizzly_1057.jpg  
  inflating: bears/training/grizzly/grizzly_1094.jpg  
  inflating: bears/training/grizzly/grizzly_1081.jpg  
  inflating: bears/training/grizzly/grizzly_1095.jpg  
  inflating: bears/training/grizzly/grizzly_1042.jpg  
  inflating: bears/training/grizzly/grizzly_1283.jpg  
  inflating: bears/training/grizzly/grizzly_1268.jpg  
  inflating: bears/training/grizzly/grizzly_1240.jpg  
  inflating: bears/training/grizzly/grizzly_1254.jpg  
  inflating: bears/training/grizzly/grizzly_1308.jpg  
  inflating: bears/training/grizzly/grizzly_1122.jpg  
  inflating: bears/training/grizzly/grizzly_1145.jpg  
  inflating: bears/training/grizzly/grizzly_1192.jpg  
  inflating: bears/training/grizzly/grizzly_1390.jpg  
  inflating: bears/training/grizzly/grizzly_1227.jpg  
  inflating: bears/training/grizzly/grizzly_1019.jpg  
  inflating: bears/training/grizzly/grizzly_1031.jpg  
  inflating: bears/training/grizzly/grizzly_1025.jpg  
  inflating: bears/training/grizzly/grizzly_1226.jpg  
  inflating: bears/training/grizzly/grizzly_1232.jpg  
  inflating: bears/training/grizzly/grizzly_1352.jpg  
  inflating: bears/training/grizzly/grizzly_1346.jpg  
  inflating: bears/training/grizzly/grizzly_1187.jpg  
  inflating: bears/training/grizzly/grizzly_1150.jpg  
  inflating: bears/training/grizzly/grizzly_1144.jpg  
  inflating: bears/training/grizzly/grizzly_1178.jpg  
  inflating: bears/training/grizzly/grizzly_1191.jpg  
  inflating: bears/training/grizzly/grizzly_1185.jpg  
  inflating: bears/training/grizzly/grizzly_1378.jpg  
  inflating: bears/training/grizzly/grizzly_1218.jpg  
  inflating: bears/training/grizzly/grizzly_1224.jpg  
  inflating: bears/training/grizzly/grizzly_1032.jpg  
  inflating: bears/training/grizzly/grizzly_1027.jpg  
  inflating: bears/training/grizzly/grizzly_1392.jpg  
  inflating: bears/training/grizzly/grizzly_1351.jpg  
  inflating: bears/training/grizzly/grizzly_1379.jpg  
  inflating: bears/training/grizzly/grizzly_1190.jpg  
  inflating: bears/training/grizzly/grizzly_1147.jpg  
  inflating: bears/training/grizzly/grizzly_1153.jpg  
  inflating: bears/training/grizzly/grizzly_1157.jpg  
  inflating: bears/training/grizzly/grizzly_1143.jpg  
  inflating: bears/training/grizzly/grizzly_1194.jpg  
  inflating: bears/training/grizzly/grizzly_1180.jpg  
  inflating: bears/training/grizzly/grizzly_1355.jpg  
  inflating: bears/training/grizzly/grizzly_1221.jpg  
  inflating: bears/training/grizzly/grizzly_1235.jpg  
  inflating: bears/training/grizzly/grizzly_1209.jpg  
  inflating: bears/training/grizzly/grizzly_1036.jpg  
  inflating: bears/training/grizzly/grizzly_1208.jpg  
  inflating: bears/training/grizzly/grizzly_1234.jpg  
  inflating: bears/training/grizzly/grizzly_1220.jpg  
  inflating: bears/training/grizzly/grizzly_1397.jpg  
  inflating: bears/training/grizzly/grizzly_1354.jpg  
  inflating: bears/training/grizzly/grizzly_1340.png  
  inflating: bears/training/grizzly/grizzly_1195.jpg  
  inflating: bears/training/grizzly/grizzly_1142.jpg  
  inflating: bears/training/grizzly/grizzly_1156.jpg  
  inflating: bears/training/grizzly/grizzly_1140.jpg  
  inflating: bears/training/grizzly/grizzly_1183.jpg  
  inflating: bears/training/grizzly/grizzly_1395.jpg  
  inflating: bears/training/grizzly/grizzly_1020.jpg  
  inflating: bears/training/grizzly/grizzly_1021.jpg  
  inflating: bears/training/grizzly/grizzly_1035.jpg  
  inflating: bears/training/grizzly/grizzly_1223.jpg  
  inflating: bears/training/grizzly/grizzly_1237.jpg  
  inflating: bears/training/grizzly/grizzly_1394.jpg  
  inflating: bears/training/grizzly/grizzly_1380.jpg  
  inflating: bears/training/grizzly/grizzly_1357.jpg  
  inflating: bears/training/grizzly/grizzly_1343.jpg  
  inflating: bears/training/grizzly/grizzly_1196.jpg  
  inflating: bears/training/grizzly/grizzly_1182.jpg  
  inflating: bears/training/grizzly/grizzly_1169.jpg  
  inflating: bears/training/grizzly/grizzly_1141.jpg  
  inflating: bears/training/grizzly/grizzly_1164.jpg  
  inflating: bears/training/grizzly/grizzly_1170.jpg  
  inflating: bears/training/grizzly/grizzly_1366.jpg  
  inflating: bears/training/grizzly/grizzly_1212.jpg  
  inflating: bears/training/grizzly/grizzly_1206.jpg  
  inflating: bears/training/grizzly/grizzly_1010.jpg  
  inflating: bears/training/grizzly/grizzly_1011.jpg  
  inflating: bears/training/grizzly/grizzly_1039.jpg  
  inflating: bears/training/grizzly/grizzly_1207.jpg  
  inflating: bears/training/grizzly/grizzly_1367.jpg  
  inflating: bears/training/grizzly/grizzly_1171.jpg  
  inflating: bears/training/grizzly/grizzly_1159.jpg  
  inflating: bears/training/grizzly/grizzly_1167.jpg  
  inflating: bears/training/grizzly/grizzly_1359.jpg  
  inflating: bears/training/grizzly/grizzly_1371.jpg  
  inflating: bears/training/grizzly/grizzly_1205.jpg  
  inflating: bears/training/grizzly/grizzly_1211.jpg  
  inflating: bears/training/grizzly/grizzly_1007.jpg  
  inflating: bears/training/grizzly/grizzly_1013.jpg  
  inflating: bears/training/grizzly/grizzly_1012.jpg  
  inflating: bears/training/grizzly/grizzly_1006.jpg  
  inflating: bears/training/grizzly/grizzly_1210.jpg  
  inflating: bears/training/grizzly/grizzly_1204.jpg  
  inflating: bears/training/grizzly/grizzly_1238.jpg  
  inflating: bears/training/grizzly/grizzly_1358.jpg  
  inflating: bears/training/grizzly/grizzly_1166.jpg  
  inflating: bears/training/grizzly/grizzly_1172.jpg  
  inflating: bears/training/grizzly/grizzly_1176.jpg  
  inflating: bears/training/grizzly/grizzly_1360.jpg  
  inflating: bears/training/grizzly/grizzly_1348.jpg  
  inflating: bears/training/grizzly/grizzly_1228.jpg  
  inflating: bears/training/grizzly/grizzly_1017.jpg  
  inflating: bears/training/grizzly/grizzly_1229.jpg  
  inflating: bears/training/grizzly/grizzly_1215.jpg  
  inflating: bears/training/grizzly/grizzly_1349.jpg  
  inflating: bears/training/grizzly/grizzly_1361.jpg  
  inflating: bears/training/grizzly/grizzly_1375.jpg  
  inflating: bears/training/grizzly/grizzly_1177.jpg  
  inflating: bears/training/grizzly/grizzly_1175.jpg  
  inflating: bears/training/grizzly/grizzly_1149.jpg  
  inflating: bears/training/grizzly/grizzly_1363.jpg  
  inflating: bears/training/grizzly/grizzly_1388.jpg  
  inflating: bears/training/grizzly/grizzly_1217.jpg  
  inflating: bears/training/grizzly/grizzly_1015.jpg  
  inflating: bears/training/grizzly/grizzly_1001.jpg  
  inflating: bears/training/grizzly/grizzly_1029.jpg  
  inflating: bears/training/grizzly/grizzly_1028.jpg  
  inflating: bears/training/grizzly/grizzly_1014.jpg  
  inflating: bears/training/grizzly/grizzly_1202.jpg  
  inflating: bears/training/grizzly/grizzly_1216.jpg  
  inflating: bears/training/grizzly/grizzly_1362.jpg  
  inflating: bears/training/grizzly/grizzly_1148.jpg  
  inflating: bears/training/grizzly/grizzly_1160.jpg  
  inflating: bears/training/grizzly/grizzly_1107.jpg  
  inflating: bears/training/grizzly/grizzly_1339.png  
  inflating: bears/training/grizzly/grizzly_1271.jpg  
  inflating: bears/training/grizzly/grizzly_1265.jpg  
  inflating: bears/training/grizzly/grizzly_1073.jpg  
  inflating: bears/training/grizzly/grizzly_1067.jpg  
  inflating: bears/training/grizzly/grizzly_1098.jpg  
  inflating: bears/training/grizzly/grizzly_1099.jpg  
  inflating: bears/training/grizzly/grizzly_1066.jpg  
  inflating: bears/training/grizzly/grizzly_1264.jpg  
  inflating: bears/training/grizzly/grizzly_1258.jpg  
  inflating: bears/training/grizzly/grizzly_1304.jpg  
  inflating: bears/training/grizzly/grizzly_1138.jpg  
  inflating: bears/training/grizzly/grizzly_1104.jpg  
  inflating: bears/training/grizzly/grizzly_1312.jpg  
  inflating: bears/training/grizzly/grizzly_1272.jpg  
  inflating: bears/training/grizzly/grizzly_1299.jpg  
  inflating: bears/training/grizzly/grizzly_1071.jpg  
  inflating: bears/training/grizzly/grizzly_1065.jpg  
  inflating: bears/training/grizzly/grizzly_1059.jpg  
  inflating: bears/training/grizzly/grizzly_1273.jpg  
  inflating: bears/training/grizzly/grizzly_1267.jpg  
  inflating: bears/training/grizzly/grizzly_1313.jpg  
  inflating: bears/training/grizzly/grizzly_1111.jpg  
  inflating: bears/training/grizzly/grizzly_1139.jpg  
  inflating: bears/training/grizzly/grizzly_1115.jpg  
  inflating: bears/training/grizzly/grizzly_1101.jpg  
  inflating: bears/training/grizzly/grizzly_1129.jpg  
  inflating: bears/training/grizzly/grizzly_1303.jpg  
  inflating: bears/training/grizzly/grizzly_1277.jpg  
  inflating: bears/training/grizzly/grizzly_1061.jpg  
  inflating: bears/training/grizzly/grizzly_1075.jpg  
  inflating: bears/training/grizzly/grizzly_1048.jpg  
  inflating: bears/training/grizzly/grizzly_1289.jpg  
  inflating: bears/training/grizzly/grizzly_1262.jpg  
  inflating: bears/training/grizzly/grizzly_1302.jpg  
  inflating: bears/training/grizzly/grizzly_1128.jpg  
  inflating: bears/training/grizzly/grizzly_1100.jpg  
  inflating: bears/training/grizzly/grizzly_1102.jpg  
  inflating: bears/training/grizzly/grizzly_1300.jpg  
  inflating: bears/training/grizzly/grizzly_1314.jpg  
  inflating: bears/training/grizzly/grizzly_1328.jpg  
  inflating: bears/training/grizzly/grizzly_1274.jpg  
  inflating: bears/training/grizzly/grizzly_1248.jpg  
  inflating: bears/training/grizzly/grizzly_1062.jpg  
  inflating: bears/training/grizzly/grizzly_1088.jpg  
  inflating: bears/training/grizzly/grizzly_1249.jpg  
  inflating: bears/training/grizzly/grizzly_1261.jpg  
  inflating: bears/training/grizzly/grizzly_1315.jpg  
  inflating: bears/training/grizzly/grizzly_1301.jpg  
  inflating: bears/training/grizzly/grizzly_1117.jpg  
  inflating: bears/validation/polar/polar_1365.png  
  inflating: bears/validation/polar/polar_1211.jpg  
  inflating: bears/validation/polar/polar_1204.jpg  
  inflating: bears/validation/polar/polar_1164.jpg  
  inflating: bears/validation/polar/polar_1170.jpg  
  inflating: bears/validation/polar/polar_1212.jpg  
  inflating: bears/validation/polar/polar_1206.jpg  
  inflating: bears/validation/polar/polar_1159.jpg  
  inflating: bears/validation/polar/polar_1161.jpg  
  inflating: bears/validation/polar/polar_1149.jpg  
  inflating: bears/validation/polar/polar_1388.jpg  
  inflating: bears/validation/polar/polar_1028.jpg  
  inflating: bears/validation/polar/polar_1376.jpg  
  inflating: bears/validation/polar/polar_1160.jpg  
  inflating: bears/validation/polar/polar_1017.jpg  
  inflating: bears/validation/polar/polar_1110.jpg  
  inflating: bears/validation/polar/polar_1104.jpg  
  inflating: bears/validation/polar/polar_1307.jpg  
  inflating: bears/validation/polar/polar_1305.jpg  
  inflating: bears/validation/polar/polar_1116.jpg  
  inflating: bears/validation/polar/polar_1328.jpg  
  inflating: bears/validation/polar/polar_1274.jpg  
  inflating: bears/validation/polar/polar_1260.jpg  
  inflating: bears/validation/polar/polar_1248.jpg  
  inflating: bears/validation/polar/polar_1129.jpg  
  inflating: bears/validation/polar/polar_1263.jpg  
  inflating: bears/validation/polar/polar_1049.jpg  
  inflating: bears/validation/polar/polar_1262.jpg  
  inflating: bears/validation/polar/polar_1100.jpg  
  inflating: bears/validation/polar/polar_1253.jpg  
  inflating: bears/validation/polar/polar_1079.jpg  
  inflating: bears/validation/polar/polar_1093.jpg  
  inflating: bears/validation/polar/polar_1326.jpg  
  inflating: bears/validation/polar/polar_1118.jpg  
  inflating: bears/validation/polar/polar_1330.jpg  
  inflating: bears/validation/polar/polar_1085.jpg  
  inflating: bears/validation/polar/polar_1047.jpg  
  inflating: bears/validation/polar/polar_1084.jpg  
  inflating: bears/validation/polar/polar_1282.jpg  
  inflating: bears/validation/polar/polar_1094.jpg  
  inflating: bears/validation/polar/polar_1320.jpg  
  inflating: bears/validation/polar/polar_1295.jpg  
  inflating: bears/validation/polar/polar_1242.jpg  
  inflating: bears/validation/polar/polar_1055.jpg  
  inflating: bears/validation/polar/polar_1109.jpg  
  inflating: bears/validation/polar/polar_1191.jpg  
  inflating: bears/validation/polar/polar_1185.jpg  
  inflating: bears/validation/polar/polar_1230.jpg  
  inflating: bears/validation/polar/polar_1032.jpg  
  inflating: bears/validation/polar/polar_1231.jpg  
  inflating: bears/validation/polar/polar_1351.jpg  
  inflating: bears/validation/polar/polar_1147.jpg  
  inflating: bears/validation/polar/polar_1184.jpg  
  inflating: bears/validation/polar/polar_1186.jpg  
  inflating: bears/validation/polar/polar_1151.jpg  
  inflating: bears/validation/polar/polar_1384.jpg  
  inflating: bears/validation/polar/polar_1353.jpg  
  inflating: bears/validation/polar/polar_1031.jpg  
  inflating: bears/validation/polar/polar_1025.jpg  
  inflating: bears/validation/polar/polar_1030.jpg  
  inflating: bears/validation/polar/polar_1385.jpg  
  inflating: bears/validation/polar/polar_1144.jpg  
  inflating: bears/validation/polar/polar_1178.jpg  
  inflating: bears/validation/polar/polar_1183.jpg  
  inflating: bears/validation/polar/polar_1197.jpg  
  inflating: bears/validation/polar/polar_1168.jpg  
  inflating: bears/validation/polar/polar_1395.jpg  
  inflating: bears/validation/polar/polar_1222.jpg  
  inflating: bears/validation/polar/polar_1394.jpg  
  inflating: bears/validation/polar/polar_1380.jpg  
  inflating: bears/validation/polar/polar_1169.jpg  
  inflating: bears/validation/polar/polar_1396.jpg  
  inflating: bears/validation/polar/polar_1023.jpg  
  inflating: bears/validation/polar/polar_1340.jpg  
  inflating: bears/validation/panda/panda_1205.jpg  
  inflating: bears/validation/panda/panda_1370.jpg  
  inflating: bears/validation/panda/panda_1158.jpg  
  inflating: bears/validation/panda/panda_1004.jpg  
  inflating: bears/validation/panda/panda_1207.jpg  
  inflating: bears/validation/panda/panda_1161.jpg  
  inflating: bears/validation/panda/panda_1149.jpg  
  inflating: bears/validation/panda/panda_1388.jpg  
  inflating: bears/validation/panda/panda_1015.jpg  
  inflating: bears/validation/panda/panda_1028.jpg  
  inflating: bears/validation/panda/panda_1148.jpg  
  inflating: bears/validation/panda/panda_1162.jpg  
  inflating: bears/validation/panda/panda_1360.jpg  
  inflating: bears/validation/panda/panda_1348.jpg  
  inflating: bears/validation/panda/panda_1003.jpg  
  inflating: bears/validation/panda/panda_1215.jpg  
  inflating: bears/validation/panda/panda_1339.jpg  
  inflating: bears/validation/panda/panda_1073.jpg  
  inflating: bears/validation/panda/panda_1304.jpg  
  inflating: bears/validation/panda/panda_1112.jpg  
  inflating: bears/validation/panda/panda_1102.jpg  
  inflating: bears/validation/panda/panda_1328.jpg  
  inflating: bears/validation/panda/panda_1089.jpg  
  inflating: bears/validation/panda/panda_1077.jpg  
  inflating: bears/validation/panda/panda_1275.jpg  
  inflating: bears/validation/panda/panda_1329.jpg  
  inflating: bears/validation/panda/panda_1315.png  
  inflating: bears/validation/panda/panda_1048.jpg  
  inflating: bears/validation/panda/panda_1302.jpg  
  inflating: bears/validation/panda/panda_1131.jpg  
  inflating: bears/validation/panda/panda_1333.jpg  
  inflating: bears/validation/panda/panda_1253.jpg  
  inflating: bears/validation/panda/panda_1247.jpg  
  inflating: bears/validation/panda/panda_1290.jpg  
  inflating: bears/validation/panda/panda_1092.jpg  
  inflating: bears/validation/panda/panda_1087.jpg  
  inflating: bears/validation/panda/panda_1126.jpg  
  inflating: bears/validation/panda/panda_1324.jpg  
  inflating: bears/validation/panda/panda_1278.jpg  
  inflating: bears/validation/panda/panda_1052.jpg  
  inflating: bears/validation/panda/panda_1084.jpg  
  inflating: bears/validation/panda/panda_1319.jpg  
  inflating: bears/validation/panda/panda_1133.jpg  
  inflating: bears/validation/panda/panda_1123.jpg  
  inflating: bears/validation/panda/panda_1043.jpg  
  inflating: bears/validation/panda/panda_1080.jpg  
  inflating: bears/validation/panda/panda_1081.jpg  
  inflating: bears/validation/panda/panda_1042.jpg  
  inflating: bears/validation/panda/panda_1283.jpg  
  inflating: bears/validation/panda/panda_1268.jpg  
  inflating: bears/validation/panda/panda_1240.jpg  
  inflating: bears/validation/panda/panda_1336.jpg  
  inflating: bears/validation/panda/panda_1281.jpg  
  inflating: bears/validation/panda/panda_1054.jpg  
  inflating: bears/validation/panda/panda_1082.jpg  
  inflating: bears/validation/panda/panda_1294.jpg  
  inflating: bears/validation/panda/panda_1109.jpg  
  inflating: bears/validation/panda/panda_1146.jpg  
  inflating: bears/validation/panda/panda_1152.jpg  
  inflating: bears/validation/panda/panda_1191.jpg  
  inflating: bears/validation/panda/panda_1387.jpg  
  inflating: bears/validation/panda/panda_1393.jpg  
  inflating: bears/validation/panda/panda_1033.jpg  
  inflating: bears/validation/panda/panda_1392.jpg  
  inflating: bears/validation/panda/panda_1190.jpg  
  inflating: bears/validation/panda/panda_1184.jpg  
  inflating: bears/validation/panda/panda_1153.jpg  
  inflating: bears/validation/panda/panda_1151.jpg  
  inflating: bears/validation/panda/panda_1353.jpg  
  inflating: bears/validation/panda/panda_1179.png  
  inflating: bears/validation/panda/panda_1384.jpg  
  inflating: bears/validation/panda/panda_1030.jpg  
  inflating: bears/validation/panda/panda_1144.jpg  
  inflating: bears/validation/panda/panda_1168.jpg  
  inflating: bears/validation/panda/panda_1009.jpg  
  inflating: bears/validation/panda/panda_1155.jpg  
  inflating: bears/validation/panda/panda_1180.jpg  
  inflating: bears/validation/panda/panda_1355.jpg  
  inflating: bears/validation/panda/panda_1383.jpg  
  inflating: bears/validation/panda/panda_1195.jpg  
  inflating: bears/validation/grizzly/grizzly_1292.jpg  
  inflating: bears/validation/grizzly/grizzly_1253.jpg  
  inflating: bears/validation/grizzly/grizzly_1079.jpg  
  inflating: bears/validation/grizzly/grizzly_1093.jpg  
  inflating: bears/validation/grizzly/grizzly_1291.jpg  
  inflating: bears/validation/grizzly/grizzly_1124.jpg  
  inflating: bears/validation/grizzly/grizzly_1336.png  
  inflating: bears/validation/grizzly/grizzly_1281.jpg  
  inflating: bears/validation/grizzly/grizzly_1068.jpg  
  inflating: bears/validation/grizzly/grizzly_1097.jpg  
  inflating: bears/validation/grizzly/grizzly_1294.jpg  
  inflating: bears/validation/grizzly/grizzly_1243.jpg  
  inflating: bears/validation/grizzly/grizzly_1121.jpg  
  inflating: bears/validation/grizzly/grizzly_1137.jpg  
  inflating: bears/validation/grizzly/grizzly_1241.jpg  
  inflating: bears/validation/grizzly/grizzly_1282.jpg  
  inflating: bears/validation/grizzly/grizzly_1043.jpg  
  inflating: bears/validation/grizzly/grizzly_1056.jpg  
  inflating: bears/validation/grizzly/grizzly_1297.jpg  
  inflating: bears/validation/grizzly/grizzly_1334.jpg  
  inflating: bears/validation/grizzly/grizzly_1320.jpg  
  inflating: bears/validation/grizzly/grizzly_1136.jpg  
  inflating: bears/validation/grizzly/grizzly_1179.jpg  
  inflating: bears/validation/grizzly/grizzly_1186.jpg  
  inflating: bears/validation/grizzly/grizzly_1347.jpg  
  inflating: bears/validation/grizzly/grizzly_1018.jpg  
  inflating: bears/validation/grizzly/grizzly_1385.jpg  
  inflating: bears/validation/grizzly/grizzly_1146.jpg  
  inflating: bears/validation/grizzly/grizzly_1344.jpg  
  inflating: bears/validation/grizzly/grizzly_1387.jpg  
  inflating: bears/validation/grizzly/grizzly_1026.jpg  
  inflating: bears/validation/grizzly/grizzly_1033.jpg  
  inflating: bears/validation/grizzly/grizzly_1231.jpg  
  inflating: bears/validation/grizzly/grizzly_1386.jpg  
  inflating: bears/validation/grizzly/grizzly_1184.jpg  
  inflating: bears/validation/grizzly/grizzly_1341.png  
  inflating: bears/validation/grizzly/grizzly_1022.jpg  
  inflating: bears/validation/grizzly/grizzly_1368.jpg  
  inflating: bears/validation/grizzly/grizzly_1197.jpg  
  inflating: bears/validation/grizzly/grizzly_1342.jpg  
  inflating: bears/validation/grizzly/grizzly_1356.jpg  
  inflating: bears/validation/grizzly/grizzly_1381.jpg  
  inflating: bears/validation/grizzly/grizzly_1222.jpg  
  inflating: bears/validation/grizzly/grizzly_1034.jpg  
  inflating: bears/validation/grizzly/grizzly_1009.jpg  
  inflating: bears/validation/grizzly/grizzly_1155.jpg  
  inflating: bears/validation/grizzly/grizzly_1165.jpg  
  inflating: bears/validation/grizzly/grizzly_1239.jpg  
  inflating: bears/validation/grizzly/grizzly_1364.jpg  
  inflating: bears/validation/grizzly/grizzly_1370.jpg  
  inflating: bears/validation/grizzly/grizzly_1189.jpg  
  inflating: bears/validation/grizzly/grizzly_1374.jpg  
  inflating: bears/validation/grizzly/grizzly_1214.jpg  
  inflating: bears/validation/grizzly/grizzly_1002.jpg  
  inflating: bears/validation/grizzly/grizzly_1016.jpg  
  inflating: bears/validation/grizzly/grizzly_1201.jpg  
  inflating: bears/validation/grizzly/grizzly_1203.jpg  
  inflating: bears/validation/grizzly/grizzly_1389.jpg  
  inflating: bears/validation/grizzly/grizzly_1376.jpg  
  inflating: bears/validation/grizzly/grizzly_1174.jpg  
  inflating: bears/validation/grizzly/grizzly_1113.jpg  
  inflating: bears/validation/grizzly/grizzly_1305.jpg  
  inflating: bears/validation/grizzly/grizzly_1072.jpg  
  inflating: bears/validation/grizzly/grizzly_1270.jpg  
  inflating: bears/validation/grizzly/grizzly_1338.jpg  
  inflating: bears/validation/grizzly/grizzly_1112.jpg  
  inflating: bears/validation/grizzly/grizzly_1106.jpg  
  inflating: bears/validation/grizzly/grizzly_1110.jpg  
  inflating: bears/validation/grizzly/grizzly_1266.jpg  
  inflating: bears/validation/grizzly/grizzly_1058.jpg  
  inflating: bears/validation/grizzly/grizzly_1064.jpg  
  inflating: bears/validation/grizzly/grizzly_1070.jpg  
  inflating: bears/validation/grizzly/grizzly_1298.jpg  
  inflating: bears/validation/grizzly/grizzly_1263.jpg  
  inflating: bears/validation/grizzly/grizzly_1288.jpg  
  inflating: bears/validation/grizzly/grizzly_1049.jpg  
  inflating: bears/validation/grizzly/grizzly_1074.jpg  
  inflating: bears/validation/grizzly/grizzly_1276.jpg  
  inflating: bears/validation/grizzly/grizzly_1316.jpg  
  inflating: bears/validation/grizzly/grizzly_1116.jpg  
  inflating: bears/validation/grizzly/grizzly_1260.jpg  
  inflating: bears/validation/grizzly/grizzly_1089.jpg  
  inflating: bears/validation/grizzly/grizzly_1063.jpg  
  inflating: bears/validation/grizzly/grizzly_1077.jpg  
  inflating: bears/validation/grizzly/grizzly_1275.jpg  
  inflating: bears/validation/grizzly/grizzly_1329.jpg  

Create 3 seperate data generators for training, validation, and testing

In [36]:
datagen = ImageDataGenerator(
    rescale=1./255)

train_ds = datagen.flow_from_directory(
  './bears/training/',
  target_size=(48, 48),
  shuffle=True,
  batch_size=32)

valid_ds = datagen.flow_from_directory(
  './bears/validation/',
  target_size=(48, 48),
  shuffle=True,
  batch_size=32)

test_ds = datagen.flow_from_directory(
    './bears/test/',
    target_size=(48, 48),
    shuffle=True,
    batch_size=32
)
Found 718 images belonging to 3 classes.
Found 240 images belonging to 3 classes.
Found 240 images belonging to 3 classes.

Model for the Split Data

In [37]:
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Conv2D, Flatten
from tensorflow.keras import datasets, layers, models

model3 = models.Sequential()

model3.add(layers.Conv2D( 64, ( 3, 3 ), activation = 'relu', 
                        input_shape = (48, 48, 3) ) )
model3.add(layers.MaxPooling2D(4, 4) )
model3.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu' ) )
model3.add(layers.MaxPooling2D(2, 2) )
model3.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu' ) )
model3.add( Flatten() )
model3.add( Dense( 32, activation = 'relu' ) )
model3.add( Dense( 3, activation = 'softmax' ) )

Model Summary

In [38]:
model3.summary()
Model: "sequential_3"
_________________________________________________________________
 Layer (type)                Output Shape              Param #   
=================================================================
 conv2d_9 (Conv2D)           (None, 46, 46, 64)        1792      
                                                                 
 max_pooling2d_6 (MaxPooling  (None, 11, 11, 64)       0         
 2D)                                                             
                                                                 
 conv2d_10 (Conv2D)          (None, 9, 9, 32)          18464     
                                                                 
 max_pooling2d_7 (MaxPooling  (None, 4, 4, 32)         0         
 2D)                                                             
                                                                 
 conv2d_11 (Conv2D)          (None, 2, 2, 32)          9248      
                                                                 
 flatten_3 (Flatten)         (None, 128)               0         
                                                                 
 dense_6 (Dense)             (None, 32)                4128      
                                                                 
 dense_7 (Dense)             (None, 3)                 99        
                                                                 
=================================================================
Total params: 33,731
Trainable params: 33,731
Non-trainable params: 0
_________________________________________________________________

Compile the model

In [39]:
model3.compile(optimizer='adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()])

Train the model on split data

In [40]:
history3 = model3.fit(train_ds, epochs=40, validation_data=valid_ds, batch_size=32, callbacks = [callback])
Epoch 1/40
23/23 [==============================] - 8s 243ms/step - loss: 1.0146 - accuracy: 0.4833 - precision_4: 0.7172 - recall_4: 0.0989 - val_loss: 0.8732 - val_accuracy: 0.5667 - val_precision_4: 0.6641 - val_recall_4: 0.3542
Epoch 2/40
23/23 [==============================] - 6s 268ms/step - loss: 0.7322 - accuracy: 0.6212 - precision_4: 0.7300 - recall_4: 0.4708 - val_loss: 0.7777 - val_accuracy: 0.5875 - val_precision_4: 0.6453 - val_recall_4: 0.5458
Epoch 3/40
23/23 [==============================] - 5s 222ms/step - loss: 0.6538 - accuracy: 0.6685 - precision_4: 0.7083 - recall_4: 0.6086 - val_loss: 0.6825 - val_accuracy: 0.6458 - val_precision_4: 0.6713 - val_recall_4: 0.6042
Epoch 4/40
23/23 [==============================] - 6s 271ms/step - loss: 0.5530 - accuracy: 0.7730 - precision_4: 0.8016 - recall_4: 0.7089 - val_loss: 0.5958 - val_accuracy: 0.7375 - val_precision_4: 0.7671 - val_recall_4: 0.7000
Epoch 5/40
23/23 [==============================] - 5s 231ms/step - loss: 0.4983 - accuracy: 0.8036 - precision_4: 0.8291 - recall_4: 0.7702 - val_loss: 0.5838 - val_accuracy: 0.7750 - val_precision_4: 0.7897 - val_recall_4: 0.7042
Epoch 6/40
23/23 [==============================] - 6s 283ms/step - loss: 0.4477 - accuracy: 0.8259 - precision_4: 0.8421 - recall_4: 0.8022 - val_loss: 0.5020 - val_accuracy: 0.7875 - val_precision_4: 0.8117 - val_recall_4: 0.7542
Epoch 7/40
23/23 [==============================] - 5s 231ms/step - loss: 0.4298 - accuracy: 0.8175 - precision_4: 0.8288 - recall_4: 0.8022 - val_loss: 0.6005 - val_accuracy: 0.7458 - val_precision_4: 0.7564 - val_recall_4: 0.7375
Epoch 8/40
23/23 [==============================] - 6s 280ms/step - loss: 0.3757 - accuracy: 0.8621 - precision_4: 0.8702 - recall_4: 0.8496 - val_loss: 0.4541 - val_accuracy: 0.8333 - val_precision_4: 0.8383 - val_recall_4: 0.8208
Epoch 9/40
23/23 [==============================] - 5s 226ms/step - loss: 0.3433 - accuracy: 0.8760 - precision_4: 0.8902 - recall_4: 0.8579 - val_loss: 0.4570 - val_accuracy: 0.8375 - val_precision_4: 0.8578 - val_recall_4: 0.8042
Epoch 10/40
23/23 [==============================] - 6s 254ms/step - loss: 0.3111 - accuracy: 0.8928 - precision_4: 0.9022 - recall_4: 0.8733 - val_loss: 0.4111 - val_accuracy: 0.8750 - val_precision_4: 0.8836 - val_recall_4: 0.8542
Epoch 11/40
23/23 [==============================] - 5s 225ms/step - loss: 0.2651 - accuracy: 0.8969 - precision_4: 0.9109 - recall_4: 0.8830 - val_loss: 0.4168 - val_accuracy: 0.8583 - val_precision_4: 0.8644 - val_recall_4: 0.8500
Epoch 12/40
23/23 [==============================] - 5s 228ms/step - loss: 0.2484 - accuracy: 0.9025 - precision_4: 0.9134 - recall_4: 0.8955 - val_loss: 0.3969 - val_accuracy: 0.8625 - val_precision_4: 0.8836 - val_recall_4: 0.8542
Epoch 13/40
23/23 [==============================] - 6s 267ms/step - loss: 0.2377 - accuracy: 0.9067 - precision_4: 0.9147 - recall_4: 0.8955 - val_loss: 0.3975 - val_accuracy: 0.8708 - val_precision_4: 0.8718 - val_recall_4: 0.8500
Epoch 14/40
23/23 [==============================] - 6s 243ms/step - loss: 0.2454 - accuracy: 0.8942 - precision_4: 0.9060 - recall_4: 0.8858 - val_loss: 0.4015 - val_accuracy: 0.8750 - val_precision_4: 0.8739 - val_recall_4: 0.8667
Epoch 15/40
23/23 [==============================] - 6s 268ms/step - loss: 0.2436 - accuracy: 0.9095 - precision_4: 0.9283 - recall_4: 0.9011 - val_loss: 0.3570 - val_accuracy: 0.8958 - val_precision_4: 0.9056 - val_recall_4: 0.8792
Epoch 16/40
23/23 [==============================] - 5s 223ms/step - loss: 0.1964 - accuracy: 0.9248 - precision_4: 0.9347 - recall_4: 0.9164 - val_loss: 0.3623 - val_accuracy: 0.8875 - val_precision_4: 0.8898 - val_recall_4: 0.8750
Epoch 17/40
23/23 [==============================] - 5s 226ms/step - loss: 0.2059 - accuracy: 0.9109 - precision_4: 0.9247 - recall_4: 0.9067 - val_loss: 0.3856 - val_accuracy: 0.8625 - val_precision_4: 0.8613 - val_recall_4: 0.8542
Epoch 18/40
23/23 [==============================] - 6s 275ms/step - loss: 0.1817 - accuracy: 0.9345 - precision_4: 0.9460 - recall_4: 0.9276 - val_loss: 0.3490 - val_accuracy: 0.8958 - val_precision_4: 0.8987 - val_recall_4: 0.8875
Epoch 19/40
23/23 [==============================] - 5s 231ms/step - loss: 0.1581 - accuracy: 0.9457 - precision_4: 0.9519 - recall_4: 0.9373 - val_loss: 0.3479 - val_accuracy: 0.8958 - val_precision_4: 0.8974 - val_recall_4: 0.8750
Epoch 20/40
23/23 [==============================] - 6s 274ms/step - loss: 0.1735 - accuracy: 0.9415 - precision_4: 0.9451 - recall_4: 0.9359 - val_loss: 0.4464 - val_accuracy: 0.8375 - val_precision_4: 0.8621 - val_recall_4: 0.8333
Epoch 21/40
23/23 [==============================] - 6s 284ms/step - loss: 0.1774 - accuracy: 0.9345 - precision_4: 0.9383 - recall_4: 0.9318 - val_loss: 0.3589 - val_accuracy: 0.8958 - val_precision_4: 0.9068 - val_recall_4: 0.8917
Epoch 22/40
23/23 [==============================] - 5s 232ms/step - loss: 0.1423 - accuracy: 0.9596 - precision_4: 0.9675 - recall_4: 0.9526 - val_loss: 0.3791 - val_accuracy: 0.8833 - val_precision_4: 0.8870 - val_recall_4: 0.8833
Epoch 23/40
23/23 [==============================] - 5s 223ms/step - loss: 0.1158 - accuracy: 0.9624 - precision_4: 0.9650 - recall_4: 0.9596 - val_loss: 0.3681 - val_accuracy: 0.8917 - val_precision_4: 0.8917 - val_recall_4: 0.8917
Epoch 24/40
23/23 [==============================] - 6s 265ms/step - loss: 0.1361 - accuracy: 0.9554 - precision_4: 0.9621 - recall_4: 0.9540 - val_loss: 0.5103 - val_accuracy: 0.8500 - val_precision_4: 0.8536 - val_recall_4: 0.8500
Epoch 25/40
23/23 [==============================] - 5s 221ms/step - loss: 0.1259 - accuracy: 0.9582 - precision_4: 0.9622 - recall_4: 0.9582 - val_loss: 0.3833 - val_accuracy: 0.8958 - val_precision_4: 0.8996 - val_recall_4: 0.8958
Epoch 26/40
23/23 [==============================] - 6s 264ms/step - loss: 0.0932 - accuracy: 0.9708 - precision_4: 0.9748 - recall_4: 0.9694 - val_loss: 0.3707 - val_accuracy: 0.8958 - val_precision_4: 0.9034 - val_recall_4: 0.8958
Epoch 27/40
23/23 [==============================] - 5s 221ms/step - loss: 0.0979 - accuracy: 0.9666 - precision_4: 0.9677 - recall_4: 0.9610 - val_loss: 0.4536 - val_accuracy: 0.8625 - val_precision_4: 0.8619 - val_recall_4: 0.8583
Epoch 28/40
23/23 [==============================] - 6s 265ms/step - loss: 0.0966 - accuracy: 0.9652 - precision_4: 0.9691 - recall_4: 0.9624 - val_loss: 0.4156 - val_accuracy: 0.8750 - val_precision_4: 0.8739 - val_recall_4: 0.8667
Epoch 29/40
23/23 [==============================] - 5s 221ms/step - loss: 0.0879 - accuracy: 0.9694 - precision_4: 0.9720 - recall_4: 0.9666 - val_loss: 0.3641 - val_accuracy: 0.9042 - val_precision_4: 0.9114 - val_recall_4: 0.9000
Epoch 30/40
23/23 [==============================] - 6s 268ms/step - loss: 0.0654 - accuracy: 0.9805 - precision_4: 0.9818 - recall_4: 0.9777 - val_loss: 0.3824 - val_accuracy: 0.8917 - val_precision_4: 0.8912 - val_recall_4: 0.8875
Epoch 31/40
23/23 [==============================] - 6s 256ms/step - loss: 0.0604 - accuracy: 0.9819 - precision_4: 0.9832 - recall_4: 0.9805 - val_loss: 0.3909 - val_accuracy: 0.8958 - val_precision_4: 0.8996 - val_recall_4: 0.8958
Epoch 32/40
23/23 [==============================] - 5s 222ms/step - loss: 0.0554 - accuracy: 0.9916 - precision_4: 0.9930 - recall_4: 0.9903 - val_loss: 0.4059 - val_accuracy: 0.9000 - val_precision_4: 0.8996 - val_recall_4: 0.8958
Epoch 33/40
23/23 [==============================] - 6s 273ms/step - loss: 0.0635 - accuracy: 0.9819 - precision_4: 0.9818 - recall_4: 0.9777 - val_loss: 0.4385 - val_accuracy: 0.8917 - val_precision_4: 0.8908 - val_recall_4: 0.8833
Epoch 34/40
23/23 [==============================] - 5s 224ms/step - loss: 0.0674 - accuracy: 0.9749 - precision_4: 0.9749 - recall_4: 0.9735 - val_loss: 0.3880 - val_accuracy: 0.9000 - val_precision_4: 0.9114 - val_recall_4: 0.9000
Epoch 35/40
23/23 [==============================] - 5s 229ms/step - loss: 0.0417 - accuracy: 0.9916 - precision_4: 0.9916 - recall_4: 0.9916 - val_loss: 0.4157 - val_accuracy: 0.8875 - val_precision_4: 0.8912 - val_recall_4: 0.8875
Epoch 36/40
23/23 [==============================] - 5s 224ms/step - loss: 0.0412 - accuracy: 0.9847 - precision_4: 0.9847 - recall_4: 0.9833 - val_loss: 0.4550 - val_accuracy: 0.8917 - val_precision_4: 0.8908 - val_recall_4: 0.8833
Epoch 37/40
23/23 [==============================] - 6s 245ms/step - loss: 0.0677 - accuracy: 0.9735 - precision_4: 0.9749 - recall_4: 0.9735 - val_loss: 0.4237 - val_accuracy: 0.8958 - val_precision_4: 0.9068 - val_recall_4: 0.8917
Epoch 38/40
23/23 [==============================] - 6s 249ms/step - loss: 0.0498 - accuracy: 0.9875 - precision_4: 0.9874 - recall_4: 0.9861 - val_loss: 0.4225 - val_accuracy: 0.9000 - val_precision_4: 0.9076 - val_recall_4: 0.9000
Epoch 39/40
23/23 [==============================] - 5s 226ms/step - loss: 0.0264 - accuracy: 0.9958 - precision_4: 0.9972 - recall_4: 0.9958 - val_loss: 0.4189 - val_accuracy: 0.9000 - val_precision_4: 0.9076 - val_recall_4: 0.9000
Epoch 40/40
23/23 [==============================] - 5s 225ms/step - loss: 0.0216 - accuracy: 0.9972 - precision_4: 0.9972 - recall_4: 0.9972 - val_loss: 0.4487 - val_accuracy: 0.9083 - val_precision_4: 0.9083 - val_recall_4: 0.9083

Learning curves

In [41]:
plt.subplots_adjust(right=1.95, left=.03)

plt.subplot(1,3,1)
plt.plot(history3.history['accuracy'])
plt.plot(history3.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")

plt.subplot(1,3,2)
plt.plot(history3.history['precision_4'])
plt.plot(history3.history['val_precision_4'])
plt.ylabel('Precision')
plt.xlabel('Epoch')

plt.subplot(1,3,3)
plt.plot(history3.history['recall_4'])
plt.plot(history3.history['val_recall_4'])
plt.ylabel('Recall')
plt.xlabel('')


plt.show()
In [42]:
test_loss, test_acc, test_precision, test_recall = model3.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 1s 156ms/step - loss: 0.4183 - accuracy: 0.8792 - precision_4: 0.8792 - recall_4: 0.8792
validation_acc:  87.92
validation_loss: 0.42
validation_precision: 0.88
validation_recall: 0.88

Decrease the parameters

In [43]:
#from tensorflow.keras.models import Sequential
#from tensorflow.keras.layers import Dense, Conv2D, Flatten
#from tensorflow.keras import datasets, layers, models

model4 = models.Sequential()

model4.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', 
                        input_shape = (48, 48, 3) ) )
model4.add(layers.MaxPooling2D(4, 4) )
model4.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model4.add(layers.MaxPooling2D(2, 2) )
model4.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model4.add( Flatten() )
model4.add( Dense( 32, activation = 'relu' ) )
model4.add( Dense( 3, activation = 'softmax' ) )
In [44]:
model4.summary()
Model: "sequential_4"
_________________________________________________________________
 Layer (type)                Output Shape              Param #   
=================================================================
 conv2d_12 (Conv2D)          (None, 46, 46, 32)        896       
                                                                 
 max_pooling2d_8 (MaxPooling  (None, 11, 11, 32)       0         
 2D)                                                             
                                                                 
 conv2d_13 (Conv2D)          (None, 9, 9, 16)          4624      
                                                                 
 max_pooling2d_9 (MaxPooling  (None, 4, 4, 16)         0         
 2D)                                                             
                                                                 
 conv2d_14 (Conv2D)          (None, 2, 2, 8)           1160      
                                                                 
 flatten_4 (Flatten)         (None, 32)                0         
                                                                 
 dense_8 (Dense)             (None, 32)                1056      
                                                                 
 dense_9 (Dense)             (None, 3)                 99        
                                                                 
=================================================================
Total params: 7,835
Trainable params: 7,835
Non-trainable params: 0
_________________________________________________________________

Compile the model

In [45]:
model4.compile(optimizer='adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()])

Train the model

In [46]:
history4 = model4.fit(train_ds, epochs=40, validation_data=valid_ds, batch_size=32, callbacks = [callback])
Epoch 1/40
23/23 [==============================] - 9s 291ms/step - loss: 1.0835 - accuracy: 0.3510 - precision_5: 0.0000e+00 - recall_5: 0.0000e+00 - val_loss: 1.0419 - val_accuracy: 0.4292 - val_precision_5: 0.0000e+00 - val_recall_5: 0.0000e+00
Epoch 2/40
23/23 [==============================] - 5s 227ms/step - loss: 0.9638 - accuracy: 0.5975 - precision_5: 0.8333 - recall_5: 0.0557 - val_loss: 0.8407 - val_accuracy: 0.6250 - val_precision_5: 0.7742 - val_recall_5: 0.4000
Epoch 3/40
23/23 [==============================] - 7s 303ms/step - loss: 0.7395 - accuracy: 0.6421 - precision_5: 0.7278 - recall_5: 0.5028 - val_loss: 0.6878 - val_accuracy: 0.6958 - val_precision_5: 0.7327 - val_recall_5: 0.6167
Epoch 4/40
23/23 [==============================] - 5s 231ms/step - loss: 0.6222 - accuracy: 0.7326 - precision_5: 0.7750 - recall_5: 0.6379 - val_loss: 0.6355 - val_accuracy: 0.6958 - val_precision_5: 0.7416 - val_recall_5: 0.6458
Epoch 5/40
23/23 [==============================] - 5s 228ms/step - loss: 0.5853 - accuracy: 0.7521 - precision_5: 0.7890 - recall_5: 0.6769 - val_loss: 0.6678 - val_accuracy: 0.7083 - val_precision_5: 0.7225 - val_recall_5: 0.6833
Epoch 6/40
23/23 [==============================] - 6s 283ms/step - loss: 0.5483 - accuracy: 0.7618 - precision_5: 0.7873 - recall_5: 0.7061 - val_loss: 0.5879 - val_accuracy: 0.7458 - val_precision_5: 0.7636 - val_recall_5: 0.7000
Epoch 7/40
23/23 [==============================] - 5s 227ms/step - loss: 0.4879 - accuracy: 0.8120 - precision_5: 0.8275 - recall_5: 0.7618 - val_loss: 0.5387 - val_accuracy: 0.7750 - val_precision_5: 0.7920 - val_recall_5: 0.7458
Epoch 8/40
23/23 [==============================] - 6s 269ms/step - loss: 0.4416 - accuracy: 0.8301 - precision_5: 0.8605 - recall_5: 0.8078 - val_loss: 0.5080 - val_accuracy: 0.8000 - val_precision_5: 0.8194 - val_recall_5: 0.7750
Epoch 9/40
23/23 [==============================] - 5s 227ms/step - loss: 0.4120 - accuracy: 0.8496 - precision_5: 0.8668 - recall_5: 0.8245 - val_loss: 0.6283 - val_accuracy: 0.7542 - val_precision_5: 0.7739 - val_recall_5: 0.7417
Epoch 10/40
23/23 [==============================] - 5s 224ms/step - loss: 0.4118 - accuracy: 0.8510 - precision_5: 0.8656 - recall_5: 0.8343 - val_loss: 0.4574 - val_accuracy: 0.8208 - val_precision_5: 0.8312 - val_recall_5: 0.8000
Epoch 11/40
23/23 [==============================] - 6s 266ms/step - loss: 0.3303 - accuracy: 0.9011 - precision_5: 0.9063 - recall_5: 0.8760 - val_loss: 0.4453 - val_accuracy: 0.8333 - val_precision_5: 0.8347 - val_recall_5: 0.8208
Epoch 12/40
23/23 [==============================] - 5s 229ms/step - loss: 0.3123 - accuracy: 0.8928 - precision_5: 0.9023 - recall_5: 0.8747 - val_loss: 0.4403 - val_accuracy: 0.8417 - val_precision_5: 0.8376 - val_recall_5: 0.8167
Epoch 13/40
23/23 [==============================] - 6s 250ms/step - loss: 0.3026 - accuracy: 0.8928 - precision_5: 0.9053 - recall_5: 0.8788 - val_loss: 0.4182 - val_accuracy: 0.8417 - val_precision_5: 0.8432 - val_recall_5: 0.8292
Epoch 14/40
23/23 [==============================] - 6s 270ms/step - loss: 0.2736 - accuracy: 0.9067 - precision_5: 0.9215 - recall_5: 0.8997 - val_loss: 0.4129 - val_accuracy: 0.8417 - val_precision_5: 0.8426 - val_recall_5: 0.8250
Epoch 15/40
23/23 [==============================] - 6s 272ms/step - loss: 0.2846 - accuracy: 0.8816 - precision_5: 0.8941 - recall_5: 0.8705 - val_loss: 0.4453 - val_accuracy: 0.8333 - val_precision_5: 0.8305 - val_recall_5: 0.8167
Epoch 16/40
23/23 [==============================] - 5s 229ms/step - loss: 0.2921 - accuracy: 0.8886 - precision_5: 0.8974 - recall_5: 0.8774 - val_loss: 0.4754 - val_accuracy: 0.8167 - val_precision_5: 0.8255 - val_recall_5: 0.8083
Epoch 17/40
23/23 [==============================] - 6s 251ms/step - loss: 0.2704 - accuracy: 0.8997 - precision_5: 0.9087 - recall_5: 0.8872 - val_loss: 0.4206 - val_accuracy: 0.8375 - val_precision_5: 0.8455 - val_recall_5: 0.8208
Epoch 18/40
23/23 [==============================] - 6s 270ms/step - loss: 0.2698 - accuracy: 0.8942 - precision_5: 0.9135 - recall_5: 0.8830 - val_loss: 0.4198 - val_accuracy: 0.8500 - val_precision_5: 0.8523 - val_recall_5: 0.8417
Epoch 19/40
23/23 [==============================] - 5s 231ms/step - loss: 0.2506 - accuracy: 0.9011 - precision_5: 0.9069 - recall_5: 0.8955 - val_loss: 0.3795 - val_accuracy: 0.8792 - val_precision_5: 0.8782 - val_recall_5: 0.8708
Epoch 20/40
23/23 [==============================] - 5s 225ms/step - loss: 0.2398 - accuracy: 0.9067 - precision_5: 0.9188 - recall_5: 0.8983 - val_loss: 0.3979 - val_accuracy: 0.8583 - val_precision_5: 0.8577 - val_recall_5: 0.8542
Epoch 21/40
23/23 [==============================] - 5s 235ms/step - loss: 0.2177 - accuracy: 0.9248 - precision_5: 0.9306 - recall_5: 0.9150 - val_loss: 0.3915 - val_accuracy: 0.8667 - val_precision_5: 0.8734 - val_recall_5: 0.8625
Epoch 22/40
23/23 [==============================] - 5s 225ms/step - loss: 0.2202 - accuracy: 0.9136 - precision_5: 0.9182 - recall_5: 0.9067 - val_loss: 0.3639 - val_accuracy: 0.8750 - val_precision_5: 0.8782 - val_recall_5: 0.8708
Epoch 23/40
23/23 [==============================] - 5s 228ms/step - loss: 0.2125 - accuracy: 0.9164 - precision_5: 0.9236 - recall_5: 0.9095 - val_loss: 0.3960 - val_accuracy: 0.8458 - val_precision_5: 0.8504 - val_recall_5: 0.8292
Epoch 24/40
23/23 [==============================] - 5s 228ms/step - loss: 0.1906 - accuracy: 0.9318 - precision_5: 0.9419 - recall_5: 0.9262 - val_loss: 0.3873 - val_accuracy: 0.8500 - val_precision_5: 0.8559 - val_recall_5: 0.8417
Epoch 25/40
23/23 [==============================] - 6s 274ms/step - loss: 0.1813 - accuracy: 0.9345 - precision_5: 0.9433 - recall_5: 0.9276 - val_loss: 0.3513 - val_accuracy: 0.8750 - val_precision_5: 0.8782 - val_recall_5: 0.8708
Epoch 26/40
23/23 [==============================] - 5s 222ms/step - loss: 0.1806 - accuracy: 0.9331 - precision_5: 0.9406 - recall_5: 0.9262 - val_loss: 0.3478 - val_accuracy: 0.8792 - val_precision_5: 0.8787 - val_recall_5: 0.8750
Epoch 27/40
23/23 [==============================] - 6s 270ms/step - loss: 0.1597 - accuracy: 0.9415 - precision_5: 0.9478 - recall_5: 0.9359 - val_loss: 0.3414 - val_accuracy: 0.8750 - val_precision_5: 0.8745 - val_recall_5: 0.8708
Epoch 28/40
23/23 [==============================] - 5s 229ms/step - loss: 0.1652 - accuracy: 0.9401 - precision_5: 0.9409 - recall_5: 0.9318 - val_loss: 0.5236 - val_accuracy: 0.8333 - val_precision_5: 0.8522 - val_recall_5: 0.8167
Epoch 29/40
23/23 [==============================] - 7s 298ms/step - loss: 0.2046 - accuracy: 0.9192 - precision_5: 0.9260 - recall_5: 0.9067 - val_loss: 0.3732 - val_accuracy: 0.8750 - val_precision_5: 0.8766 - val_recall_5: 0.8583
Epoch 30/40
23/23 [==============================] - 6s 272ms/step - loss: 0.1700 - accuracy: 0.9387 - precision_5: 0.9491 - recall_5: 0.9345 - val_loss: 0.3699 - val_accuracy: 0.8583 - val_precision_5: 0.8655 - val_recall_5: 0.8583
Epoch 31/40
23/23 [==============================] - 5s 234ms/step - loss: 0.1651 - accuracy: 0.9401 - precision_5: 0.9477 - recall_5: 0.9345 - val_loss: 0.3524 - val_accuracy: 0.8625 - val_precision_5: 0.8697 - val_recall_5: 0.8625
Epoch 32/40
23/23 [==============================] - 6s 269ms/step - loss: 0.1466 - accuracy: 0.9457 - precision_5: 0.9536 - recall_5: 0.9443 - val_loss: 0.3363 - val_accuracy: 0.8833 - val_precision_5: 0.8908 - val_recall_5: 0.8833
Epoch 33/40
23/23 [==============================] - 5s 229ms/step - loss: 0.1631 - accuracy: 0.9415 - precision_5: 0.9480 - recall_5: 0.9387 - val_loss: 0.3574 - val_accuracy: 0.8708 - val_precision_5: 0.8739 - val_recall_5: 0.8667
Epoch 34/40
23/23 [==============================] - 5s 227ms/step - loss: 0.1575 - accuracy: 0.9387 - precision_5: 0.9408 - recall_5: 0.9304 - val_loss: 0.3505 - val_accuracy: 0.8750 - val_precision_5: 0.8824 - val_recall_5: 0.8750
Epoch 35/40
23/23 [==============================] - 6s 260ms/step - loss: 0.1395 - accuracy: 0.9499 - precision_5: 0.9537 - recall_5: 0.9471 - val_loss: 0.4391 - val_accuracy: 0.8625 - val_precision_5: 0.8638 - val_recall_5: 0.8458
Epoch 36/40
23/23 [==============================] - 6s 274ms/step - loss: 0.1433 - accuracy: 0.9540 - precision_5: 0.9593 - recall_5: 0.9526 - val_loss: 0.3254 - val_accuracy: 0.8917 - val_precision_5: 0.8954 - val_recall_5: 0.8917
Epoch 37/40
23/23 [==============================] - 6s 283ms/step - loss: 0.1645 - accuracy: 0.9373 - precision_5: 0.9398 - recall_5: 0.9345 - val_loss: 0.3267 - val_accuracy: 0.8792 - val_precision_5: 0.8787 - val_recall_5: 0.8750
Epoch 38/40
23/23 [==============================] - 5s 229ms/step - loss: 0.1354 - accuracy: 0.9499 - precision_5: 0.9564 - recall_5: 0.9471 - val_loss: 0.3127 - val_accuracy: 0.8958 - val_precision_5: 0.9034 - val_recall_5: 0.8958
Epoch 39/40
23/23 [==============================] - 6s 254ms/step - loss: 0.1151 - accuracy: 0.9624 - precision_5: 0.9649 - recall_5: 0.9582 - val_loss: 0.3250 - val_accuracy: 0.8792 - val_precision_5: 0.8824 - val_recall_5: 0.8750
Epoch 40/40
23/23 [==============================] - 5s 225ms/step - loss: 0.1007 - accuracy: 0.9666 - precision_5: 0.9679 - recall_5: 0.9652 - val_loss: 0.3228 - val_accuracy: 0.8917 - val_precision_5: 0.8917 - val_recall_5: 0.8917

Learning Curves

In [47]:
plt.subplots_adjust(right=1.95, left=.03)

plt.subplot(1,3,1)
plt.plot(history4.history['accuracy'])
plt.plot(history4.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")

plt.subplot(1,3,2)
plt.plot(history4.history['precision_5'])
plt.plot(history4.history['val_precision_5'])
plt.ylabel('Precision')
plt.xlabel('Epoch')

plt.subplot(1,3,3)
plt.plot(history4.history['recall_5'])
plt.plot(history4.history['val_recall_5'])
plt.ylabel('Recall')
plt.xlabel('')


plt.show()
In [48]:
test_loss, test_acc, test_precision, test_recall = model4.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 2s 239ms/step - loss: 0.2823 - accuracy: 0.9042 - precision_5: 0.9034 - recall_5: 0.8958
validation_acc:  90.42
validation_loss: 0.28
validation_precision: 0.90
validation_recall: 0.90

Task 3: Effects of Augmentation¶

Create a model

In [54]:
model5 = models.Sequential()
model5.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', input_shape = train_ds.image_shape ) )
model5.add(layers.MaxPooling2D(4, 4) )
model5.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model5.add(layers.MaxPooling2D(2, 2) )
model5.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model5.add( Flatten() )
model5.add( Dense( 32, activation = 'relu' ) )
model5.add( Dense( 3, activation = 'softmax' ) )
model5.summary()
Model: "sequential_6"
_________________________________________________________________
 Layer (type)                Output Shape              Param #   
=================================================================
 conv2d_18 (Conv2D)          (None, 126, 126, 32)      896       
                                                                 
 max_pooling2d_12 (MaxPoolin  (None, 31, 31, 32)       0         
 g2D)                                                            
                                                                 
 conv2d_19 (Conv2D)          (None, 29, 29, 16)        4624      
                                                                 
 max_pooling2d_13 (MaxPoolin  (None, 14, 14, 16)       0         
 g2D)                                                            
                                                                 
 conv2d_20 (Conv2D)          (None, 12, 12, 8)         1160      
                                                                 
 flatten_6 (Flatten)         (None, 1152)              0         
                                                                 
 dense_12 (Dense)            (None, 32)                36896     
                                                                 
 dense_13 (Dense)            (None, 3)                 99        
                                                                 
=================================================================
Total params: 43,675
Trainable params: 43,675
Non-trainable params: 0
_________________________________________________________________

Horizontal Flip

In [55]:
datagen = ImageDataGenerator(
    rescale=1./255, horizontal_flip=True,width_shift_range=0.2, height_shift_range=0.2)
train_ds = datagen.flow_from_directory(
  './bears/training/',
  target_size=(128, 128),
  shuffle=True,
  batch_size=32)

valid_ds = datagen.flow_from_directory(
  './bears/validation/',
  target_size=(128, 128),
  shuffle=True,
  batch_size=32)

test_ds = datagen.flow_from_directory(
  './bears/test/',
  target_size=(128, 128),
  shuffle=True,
  batch_size=32)
Found 718 images belonging to 3 classes.
Found 240 images belonging to 3 classes.
Found 240 images belonging to 3 classes.
In [56]:
N=3
plt.figure (figsize = (15,10))
for my_batch in train_ds:
  images = my_batch[0]
  labels = my_batch[1]
  for x in range(0,3):
    for y in range(0,3):
      plt.subplot(N,N,x*N+y+1)
      plt.axis('off')
      plt.imshow(images[x*N+y])
  break
In [57]:
#from tensorflow.keras.metrics import Precision, Recall
model5.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()] )
history5 = model5.fit(train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40
23/23 [==============================] - 13s 433ms/step - loss: 1.0491 - accuracy: 0.4206 - precision_8: 0.8611 - recall_8: 0.0432 - val_loss: 0.9087 - val_accuracy: 0.5250 - val_precision_8: 0.7500 - val_recall_8: 0.2875
Epoch 2/40
23/23 [==============================] - 9s 383ms/step - loss: 0.7747 - accuracy: 0.6309 - precision_8: 0.7277 - recall_8: 0.4763 - val_loss: 0.7569 - val_accuracy: 0.6417 - val_precision_8: 0.7127 - val_recall_8: 0.5375
Epoch 3/40
23/23 [==============================] - 8s 359ms/step - loss: 0.6379 - accuracy: 0.7298 - precision_8: 0.7750 - recall_8: 0.6476 - val_loss: 0.7234 - val_accuracy: 0.6250 - val_precision_8: 0.6498 - val_recall_8: 0.5875
Epoch 4/40
23/23 [==============================] - 9s 404ms/step - loss: 0.6692 - accuracy: 0.6825 - precision_8: 0.7271 - recall_8: 0.6421 - val_loss: 0.6595 - val_accuracy: 0.7417 - val_precision_8: 0.7830 - val_recall_8: 0.6917
Epoch 5/40
23/23 [==============================] - 9s 403ms/step - loss: 0.5910 - accuracy: 0.7493 - precision_8: 0.7762 - recall_8: 0.7006 - val_loss: 0.6439 - val_accuracy: 0.7250 - val_precision_8: 0.7411 - val_recall_8: 0.6917
Epoch 6/40
23/23 [==============================] - 9s 400ms/step - loss: 0.5456 - accuracy: 0.7911 - precision_8: 0.8068 - recall_8: 0.7563 - val_loss: 0.5847 - val_accuracy: 0.7500 - val_precision_8: 0.7655 - val_recall_8: 0.7208
Epoch 7/40
23/23 [==============================] - 8s 362ms/step - loss: 0.5864 - accuracy: 0.7604 - precision_8: 0.7879 - recall_8: 0.7242 - val_loss: 0.5514 - val_accuracy: 0.7667 - val_precision_8: 0.8278 - val_recall_8: 0.7208
Epoch 8/40
23/23 [==============================] - 10s 446ms/step - loss: 0.4593 - accuracy: 0.8301 - precision_8: 0.8519 - recall_8: 0.8008 - val_loss: 0.7106 - val_accuracy: 0.7333 - val_precision_8: 0.7384 - val_recall_8: 0.7292
Epoch 9/40
23/23 [==============================] - 9s 402ms/step - loss: 0.5358 - accuracy: 0.7799 - precision_8: 0.8036 - recall_8: 0.7521 - val_loss: 0.6029 - val_accuracy: 0.7417 - val_precision_8: 0.7692 - val_recall_8: 0.7083
Epoch 10/40
23/23 [==============================] - 9s 411ms/step - loss: 0.4463 - accuracy: 0.8315 - precision_8: 0.8569 - recall_8: 0.8008 - val_loss: 0.4821 - val_accuracy: 0.8042 - val_precision_8: 0.8170 - val_recall_8: 0.7625
Epoch 11/40
23/23 [==============================] - 9s 378ms/step - loss: 0.4064 - accuracy: 0.8565 - precision_8: 0.8743 - recall_8: 0.8426 - val_loss: 0.5934 - val_accuracy: 0.7583 - val_precision_8: 0.7639 - val_recall_8: 0.7417
Epoch 12/40
23/23 [==============================] - 8s 359ms/step - loss: 0.3806 - accuracy: 0.8565 - precision_8: 0.8737 - recall_8: 0.8384 - val_loss: 0.5367 - val_accuracy: 0.7917 - val_precision_8: 0.8166 - val_recall_8: 0.7792
Epoch 13/40
23/23 [==============================] - 9s 378ms/step - loss: 0.3673 - accuracy: 0.8705 - precision_8: 0.8795 - recall_8: 0.8538 - val_loss: 0.4565 - val_accuracy: 0.8375 - val_precision_8: 0.8465 - val_recall_8: 0.8042
Epoch 14/40
23/23 [==============================] - 9s 399ms/step - loss: 0.3619 - accuracy: 0.8593 - precision_8: 0.8743 - recall_8: 0.8426 - val_loss: 0.4525 - val_accuracy: 0.8458 - val_precision_8: 0.8640 - val_recall_8: 0.8208
Epoch 15/40
23/23 [==============================] - 9s 411ms/step - loss: 0.3724 - accuracy: 0.8649 - precision_8: 0.8871 - recall_8: 0.8426 - val_loss: 0.4804 - val_accuracy: 0.8042 - val_precision_8: 0.8067 - val_recall_8: 0.8000
Epoch 16/40
23/23 [==============================] - 9s 389ms/step - loss: 0.3071 - accuracy: 0.8914 - precision_8: 0.9043 - recall_8: 0.8816 - val_loss: 0.5068 - val_accuracy: 0.8292 - val_precision_8: 0.8462 - val_recall_8: 0.8250
Epoch 17/40
23/23 [==============================] - 8s 360ms/step - loss: 0.3707 - accuracy: 0.8468 - precision_8: 0.8665 - recall_8: 0.8315 - val_loss: 0.4159 - val_accuracy: 0.8458 - val_precision_8: 0.8696 - val_recall_8: 0.8333
Epoch 18/40
23/23 [==============================] - 9s 367ms/step - loss: 0.3220 - accuracy: 0.8816 - precision_8: 0.8964 - recall_8: 0.8677 - val_loss: 0.4510 - val_accuracy: 0.8542 - val_precision_8: 0.8638 - val_recall_8: 0.8458
Epoch 19/40
23/23 [==============================] - 9s 401ms/step - loss: 0.3400 - accuracy: 0.8663 - precision_8: 0.8748 - recall_8: 0.8565 - val_loss: 0.4495 - val_accuracy: 0.8292 - val_precision_8: 0.8496 - val_recall_8: 0.8000
Epoch 20/40
23/23 [==============================] - 9s 401ms/step - loss: 0.3303 - accuracy: 0.8663 - precision_8: 0.8797 - recall_8: 0.8552 - val_loss: 0.4512 - val_accuracy: 0.8500 - val_precision_8: 0.8596 - val_recall_8: 0.8417
Epoch 21/40
23/23 [==============================] - 9s 404ms/step - loss: 0.3451 - accuracy: 0.8677 - precision_8: 0.8878 - recall_8: 0.8593 - val_loss: 0.4141 - val_accuracy: 0.8417 - val_precision_8: 0.8504 - val_recall_8: 0.8292
Epoch 22/40
23/23 [==============================] - 8s 370ms/step - loss: 0.3066 - accuracy: 0.8802 - precision_8: 0.8993 - recall_8: 0.8705 - val_loss: 0.4940 - val_accuracy: 0.8042 - val_precision_8: 0.8139 - val_recall_8: 0.7833
Epoch 23/40
23/23 [==============================] - 9s 399ms/step - loss: 0.3053 - accuracy: 0.8872 - precision_8: 0.9000 - recall_8: 0.8774 - val_loss: 0.4338 - val_accuracy: 0.8708 - val_precision_8: 0.8841 - val_recall_8: 0.8583
Epoch 24/40
23/23 [==============================] - 9s 401ms/step - loss: 0.2998 - accuracy: 0.8997 - precision_8: 0.9086 - recall_8: 0.8719 - val_loss: 0.4366 - val_accuracy: 0.8333 - val_precision_8: 0.8468 - val_recall_8: 0.8292
Epoch 25/40
23/23 [==============================] - 9s 397ms/step - loss: 0.2888 - accuracy: 0.8886 - precision_8: 0.9029 - recall_8: 0.8802 - val_loss: 0.4687 - val_accuracy: 0.8333 - val_precision_8: 0.8390 - val_recall_8: 0.8250
Epoch 26/40
23/23 [==============================] - 9s 376ms/step - loss: 0.3414 - accuracy: 0.8691 - precision_8: 0.8798 - recall_8: 0.8565 - val_loss: 0.4784 - val_accuracy: 0.8333 - val_precision_8: 0.8398 - val_recall_8: 0.8083
Epoch 27/40
23/23 [==============================] - 9s 403ms/step - loss: 0.3423 - accuracy: 0.8719 - precision_8: 0.8915 - recall_8: 0.8468 - val_loss: 0.3476 - val_accuracy: 0.8583 - val_precision_8: 0.8745 - val_recall_8: 0.8417
Epoch 28/40
23/23 [==============================] - 9s 395ms/step - loss: 0.3030 - accuracy: 0.8858 - precision_8: 0.8935 - recall_8: 0.8760 - val_loss: 0.4596 - val_accuracy: 0.8417 - val_precision_8: 0.8439 - val_recall_8: 0.8333
Epoch 29/40
23/23 [==============================] - 9s 383ms/step - loss: 0.2688 - accuracy: 0.9053 - precision_8: 0.9192 - recall_8: 0.8872 - val_loss: 0.3680 - val_accuracy: 0.8833 - val_precision_8: 0.8856 - val_recall_8: 0.8708
Epoch 30/40
23/23 [==============================] - 8s 358ms/step - loss: 0.2657 - accuracy: 0.8997 - precision_8: 0.9068 - recall_8: 0.8942 - val_loss: 0.3820 - val_accuracy: 0.8750 - val_precision_8: 0.8734 - val_recall_8: 0.8625
Epoch 31/40
23/23 [==============================] - 8s 360ms/step - loss: 0.3069 - accuracy: 0.8649 - precision_8: 0.8771 - recall_8: 0.8552 - val_loss: 0.3945 - val_accuracy: 0.8708 - val_precision_8: 0.8961 - val_recall_8: 0.8625
Epoch 32/40
23/23 [==============================] - 9s 401ms/step - loss: 0.2542 - accuracy: 0.9039 - precision_8: 0.9239 - recall_8: 0.8955 - val_loss: 0.3226 - val_accuracy: 0.9042 - val_precision_8: 0.9076 - val_recall_8: 0.9000
Epoch 33/40
23/23 [==============================] - 9s 395ms/step - loss: 0.2593 - accuracy: 0.9053 - precision_8: 0.9117 - recall_8: 0.8914 - val_loss: 0.3757 - val_accuracy: 0.8625 - val_precision_8: 0.8798 - val_recall_8: 0.8542
Epoch 34/40
23/23 [==============================] - 8s 369ms/step - loss: 0.2363 - accuracy: 0.9136 - precision_8: 0.9282 - recall_8: 0.8997 - val_loss: 0.3528 - val_accuracy: 0.8708 - val_precision_8: 0.8814 - val_recall_8: 0.8667
Epoch 35/40
23/23 [==============================] - 8s 362ms/step - loss: 0.2914 - accuracy: 0.8858 - precision_8: 0.8999 - recall_8: 0.8760 - val_loss: 0.3456 - val_accuracy: 0.8708 - val_precision_8: 0.8889 - val_recall_8: 0.8667
Epoch 36/40
23/23 [==============================] - 9s 408ms/step - loss: 0.3018 - accuracy: 0.8900 - precision_8: 0.9014 - recall_8: 0.8788 - val_loss: 0.3499 - val_accuracy: 0.8917 - val_precision_8: 0.8987 - val_recall_8: 0.8875
Epoch 37/40
23/23 [==============================] - 9s 399ms/step - loss: 0.2572 - accuracy: 0.9025 - precision_8: 0.9155 - recall_8: 0.8900 - val_loss: 0.3238 - val_accuracy: 0.8708 - val_precision_8: 0.8927 - val_recall_8: 0.8667
Epoch 38/40
23/23 [==============================] - 9s 401ms/step - loss: 0.2332 - accuracy: 0.9039 - precision_8: 0.9121 - recall_8: 0.8955 - val_loss: 0.3464 - val_accuracy: 0.8708 - val_precision_8: 0.8771 - val_recall_8: 0.8625
Epoch 39/40
23/23 [==============================] - 9s 385ms/step - loss: 0.2389 - accuracy: 0.9053 - precision_8: 0.9169 - recall_8: 0.8914 - val_loss: 0.3271 - val_accuracy: 0.8667 - val_precision_8: 0.8889 - val_recall_8: 0.8667
Epoch 40/40
23/23 [==============================] - 8s 355ms/step - loss: 0.2322 - accuracy: 0.9192 - precision_8: 0.9248 - recall_8: 0.9081 - val_loss: 0.4035 - val_accuracy: 0.8750 - val_precision_8: 0.8787 - val_recall_8: 0.8750

Plot the Accuracy, Precision, and Recall

In [58]:
plt.subplots_adjust(right=1.95, left=.03)

plt.subplot(1,3,1)
plt.plot(history5.history['accuracy'])
plt.plot(history5.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")

plt.subplot(1,3,2)
plt.plot(history5.history['precision_8'])
plt.plot(history5.history['val_precision_8'])
plt.ylabel('Precision')
plt.xlabel('Epoch')

plt.subplot(1,3,3)
plt.plot(history5.history['recall_8'])
plt.plot(history5.history['val_recall_8'])
plt.ylabel('Recall')
plt.xlabel('')


plt.show()
In [59]:
test_loss, test_acc, test_precision, test_recall = model5.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 3s 341ms/step - loss: 0.3815 - accuracy: 0.8667 - precision_8: 0.8776 - recall_8: 0.8667
validation_acc:  86.67
validation_loss: 0.38
validation_precision: 0.88
validation_recall: 0.87

Augmentation: Random Rotation between -90 and 90 degrees

In [63]:
model6 = models.Sequential()
model6.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', input_shape = train_ds.image_shape ) )
model6.add(layers.MaxPooling2D(4, 4) )
model6.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model6.add(layers.MaxPooling2D(2, 2) )
model6.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model6.add( Flatten() )
model6.add( Dense( 32, activation = 'relu' ) )
model6.add( Dense( 3, activation = 'softmax' ) )
model6.summary()
Model: "sequential_7"
_________________________________________________________________
 Layer (type)                Output Shape              Param #   
=================================================================
 conv2d_21 (Conv2D)          (None, 126, 126, 32)      896       
                                                                 
 max_pooling2d_14 (MaxPoolin  (None, 31, 31, 32)       0         
 g2D)                                                            
                                                                 
 conv2d_22 (Conv2D)          (None, 29, 29, 16)        4624      
                                                                 
 max_pooling2d_15 (MaxPoolin  (None, 14, 14, 16)       0         
 g2D)                                                            
                                                                 
 conv2d_23 (Conv2D)          (None, 12, 12, 8)         1160      
                                                                 
 flatten_7 (Flatten)         (None, 1152)              0         
                                                                 
 dense_14 (Dense)            (None, 32)                36896     
                                                                 
 dense_15 (Dense)            (None, 3)                 99        
                                                                 
=================================================================
Total params: 43,675
Trainable params: 43,675
Non-trainable params: 0
_________________________________________________________________
In [64]:
datagen = ImageDataGenerator(rescale=1./255, rotation_range=90, width_shift_range=0.2, height_shift_range=0.2)
train_ds = datagen.flow_from_directory(
  './bears/training/',
  target_size=(128, 128),
  shuffle=True,
  batch_size=32)

valid_ds = datagen.flow_from_directory(
  './bears/validation/',
  target_size=(128, 128),
  shuffle=True,
  batch_size=32)

test_ds = datagen.flow_from_directory(
  './bears/test/',
  target_size=(128, 128),
  shuffle=True,
  batch_size=32)
Found 718 images belonging to 3 classes.
Found 240 images belonging to 3 classes.
Found 240 images belonging to 3 classes.
In [65]:
N=3
plt.figure (figsize = (10,15))
for my_batch in train_ds:
  images = my_batch[0]
  labels = my_batch[1]
  for x in range(0,3):
    for y in range(0,3):
      plt.subplot(N,N,x*N+y+1)
      plt.axis('off')
      plt.imshow(images[x*N+y])
  break
In [66]:
model6.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()] )
history6 = model6.fit(train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40
23/23 [==============================] - 11s 407ms/step - loss: 1.1063 - accuracy: 0.3579 - precision_9: 0.0000e+00 - recall_9: 0.0000e+00 - val_loss: 1.1004 - val_accuracy: 0.4333 - val_precision_9: 0.0000e+00 - val_recall_9: 0.0000e+00
Epoch 2/40
23/23 [==============================] - 8s 365ms/step - loss: 1.0461 - accuracy: 0.5153 - precision_9: 0.8750 - recall_9: 0.0390 - val_loss: 0.9832 - val_accuracy: 0.4583 - val_precision_9: 0.8281 - val_recall_9: 0.2208
Epoch 3/40
23/23 [==============================] - 9s 407ms/step - loss: 0.8208 - accuracy: 0.6072 - precision_9: 0.7112 - recall_9: 0.4526 - val_loss: 0.7895 - val_accuracy: 0.6417 - val_precision_9: 0.6868 - val_recall_9: 0.5208
Epoch 4/40
23/23 [==============================] - 9s 406ms/step - loss: 0.7254 - accuracy: 0.6727 - precision_9: 0.7050 - recall_9: 0.5724 - val_loss: 0.7510 - val_accuracy: 0.6208 - val_precision_9: 0.6703 - val_recall_9: 0.5083
Epoch 5/40
23/23 [==============================] - 9s 396ms/step - loss: 0.7078 - accuracy: 0.6797 - precision_9: 0.7148 - recall_9: 0.5724 - val_loss: 0.7706 - val_accuracy: 0.6625 - val_precision_9: 0.6946 - val_recall_9: 0.5875
Epoch 6/40
23/23 [==============================] - 10s 445ms/step - loss: 0.6701 - accuracy: 0.6922 - precision_9: 0.7366 - recall_9: 0.6309 - val_loss: 0.6357 - val_accuracy: 0.7208 - val_precision_9: 0.7621 - val_recall_9: 0.6542
Epoch 7/40
23/23 [==============================] - 9s 364ms/step - loss: 0.6444 - accuracy: 0.7201 - precision_9: 0.7556 - recall_9: 0.6588 - val_loss: 0.6556 - val_accuracy: 0.6917 - val_precision_9: 0.7136 - val_recall_9: 0.6125
Epoch 8/40
23/23 [==============================] - 9s 399ms/step - loss: 0.6024 - accuracy: 0.7660 - precision_9: 0.7972 - recall_9: 0.7228 - val_loss: 0.6447 - val_accuracy: 0.6833 - val_precision_9: 0.7136 - val_recall_9: 0.6125
Epoch 9/40
23/23 [==============================] - 10s 435ms/step - loss: 0.5877 - accuracy: 0.7758 - precision_9: 0.8056 - recall_9: 0.7270 - val_loss: 0.6624 - val_accuracy: 0.7458 - val_precision_9: 0.7511 - val_recall_9: 0.7292
Epoch 10/40
23/23 [==============================] - 9s 403ms/step - loss: 0.5101 - accuracy: 0.7953 - precision_9: 0.8097 - recall_9: 0.7702 - val_loss: 0.7855 - val_accuracy: 0.7042 - val_precision_9: 0.7149 - val_recall_9: 0.7000
Epoch 11/40
23/23 [==============================] - 8s 366ms/step - loss: 0.5175 - accuracy: 0.8064 - precision_9: 0.8281 - recall_9: 0.7786 - val_loss: 0.5197 - val_accuracy: 0.7875 - val_precision_9: 0.8287 - val_recall_9: 0.7458
Epoch 12/40
23/23 [==============================] - 9s 385ms/step - loss: 0.4504 - accuracy: 0.8357 - precision_9: 0.8503 - recall_9: 0.8148 - val_loss: 0.5497 - val_accuracy: 0.7833 - val_precision_9: 0.7974 - val_recall_9: 0.7708
Epoch 13/40
23/23 [==============================] - 9s 408ms/step - loss: 0.4115 - accuracy: 0.8440 - precision_9: 0.8651 - recall_9: 0.8217 - val_loss: 0.5353 - val_accuracy: 0.7958 - val_precision_9: 0.8000 - val_recall_9: 0.7833
Epoch 14/40
23/23 [==============================] - 9s 397ms/step - loss: 0.4112 - accuracy: 0.8426 - precision_9: 0.8590 - recall_9: 0.8231 - val_loss: 0.4943 - val_accuracy: 0.7875 - val_precision_9: 0.7991 - val_recall_9: 0.7625
Epoch 15/40
23/23 [==============================] - 9s 380ms/step - loss: 0.3962 - accuracy: 0.8384 - precision_9: 0.8594 - recall_9: 0.8259 - val_loss: 0.4233 - val_accuracy: 0.8500 - val_precision_9: 0.8504 - val_recall_9: 0.8292
Epoch 16/40
23/23 [==============================] - 8s 360ms/step - loss: 0.5102 - accuracy: 0.7674 - precision_9: 0.7893 - recall_9: 0.7409 - val_loss: 0.5568 - val_accuracy: 0.7917 - val_precision_9: 0.7974 - val_recall_9: 0.7542
Epoch 17/40
23/23 [==============================] - 8s 362ms/step - loss: 0.4276 - accuracy: 0.8426 - precision_9: 0.8601 - recall_9: 0.8134 - val_loss: 0.4778 - val_accuracy: 0.8083 - val_precision_9: 0.8391 - val_recall_9: 0.8042
Epoch 18/40
23/23 [==============================] - 9s 401ms/step - loss: 0.4107 - accuracy: 0.8510 - precision_9: 0.8621 - recall_9: 0.8357 - val_loss: 0.3749 - val_accuracy: 0.8833 - val_precision_9: 0.8918 - val_recall_9: 0.8583
Epoch 19/40
23/23 [==============================] - 9s 401ms/step - loss: 0.3606 - accuracy: 0.8593 - precision_9: 0.8665 - recall_9: 0.8315 - val_loss: 0.4052 - val_accuracy: 0.8667 - val_precision_9: 0.8697 - val_recall_9: 0.8625
Epoch 20/40
23/23 [==============================] - 11s 500ms/step - loss: 0.3653 - accuracy: 0.8663 - precision_9: 0.8836 - recall_9: 0.8454 - val_loss: 0.4199 - val_accuracy: 0.8750 - val_precision_9: 0.8793 - val_recall_9: 0.8500
Epoch 21/40
23/23 [==============================] - 9s 382ms/step - loss: 0.3703 - accuracy: 0.8635 - precision_9: 0.8834 - recall_9: 0.8440 - val_loss: 0.5146 - val_accuracy: 0.8167 - val_precision_9: 0.8421 - val_recall_9: 0.8000
Epoch 22/40
23/23 [==============================] - 9s 373ms/step - loss: 0.3821 - accuracy: 0.8482 - precision_9: 0.8693 - recall_9: 0.8245 - val_loss: 0.4474 - val_accuracy: 0.8417 - val_precision_9: 0.8559 - val_recall_9: 0.8167
Epoch 23/40
23/23 [==============================] - 9s 406ms/step - loss: 0.3739 - accuracy: 0.8733 - precision_9: 0.8832 - recall_9: 0.8635 - val_loss: 0.3948 - val_accuracy: 0.8542 - val_precision_9: 0.8821 - val_recall_9: 0.8417
Epoch 24/40
23/23 [==============================] - 9s 405ms/step - loss: 0.3883 - accuracy: 0.8593 - precision_9: 0.8819 - recall_9: 0.8217 - val_loss: 0.4113 - val_accuracy: 0.8333 - val_precision_9: 0.8622 - val_recall_9: 0.8083
Epoch 25/40
23/23 [==============================] - 8s 361ms/step - loss: 0.3229 - accuracy: 0.8760 - precision_9: 0.8828 - recall_9: 0.8496 - val_loss: 0.3875 - val_accuracy: 0.8625 - val_precision_9: 0.8729 - val_recall_9: 0.8583
Epoch 26/40
23/23 [==============================] - 9s 399ms/step - loss: 0.3586 - accuracy: 0.8635 - precision_9: 0.8719 - recall_9: 0.8440 - val_loss: 0.4349 - val_accuracy: 0.8375 - val_precision_9: 0.8491 - val_recall_9: 0.8208
Epoch 27/40
23/23 [==============================] - 9s 403ms/step - loss: 0.3431 - accuracy: 0.8691 - precision_9: 0.8934 - recall_9: 0.8524 - val_loss: 0.3755 - val_accuracy: 0.8583 - val_precision_9: 0.8602 - val_recall_9: 0.8458
Epoch 28/40
23/23 [==============================] - 10s 419ms/step - loss: 0.3067 - accuracy: 0.8872 - precision_9: 0.9007 - recall_9: 0.8719 - val_loss: 0.4075 - val_accuracy: 0.8250 - val_precision_9: 0.8369 - val_recall_9: 0.8125
Epoch 29/40
23/23 [==============================] - 9s 388ms/step - loss: 0.3179 - accuracy: 0.8858 - precision_9: 0.8984 - recall_9: 0.8621 - val_loss: 0.3723 - val_accuracy: 0.8667 - val_precision_9: 0.8870 - val_recall_9: 0.8500
Epoch 30/40
23/23 [==============================] - 8s 362ms/step - loss: 0.2899 - accuracy: 0.8816 - precision_9: 0.8940 - recall_9: 0.8691 - val_loss: 0.3866 - val_accuracy: 0.8667 - val_precision_9: 0.8707 - val_recall_9: 0.8417
Epoch 31/40
23/23 [==============================] - 9s 364ms/step - loss: 0.3216 - accuracy: 0.8830 - precision_9: 0.8978 - recall_9: 0.8691 - val_loss: 0.4603 - val_accuracy: 0.8208 - val_precision_9: 0.8341 - val_recall_9: 0.7958
Epoch 32/40
23/23 [==============================] - 9s 401ms/step - loss: 0.3346 - accuracy: 0.8816 - precision_9: 0.8941 - recall_9: 0.8705 - val_loss: 0.3832 - val_accuracy: 0.8667 - val_precision_9: 0.8803 - val_recall_9: 0.8583
Epoch 33/40
23/23 [==============================] - 9s 403ms/step - loss: 0.2765 - accuracy: 0.8955 - precision_9: 0.9108 - recall_9: 0.8816 - val_loss: 0.3899 - val_accuracy: 0.8500 - val_precision_9: 0.8602 - val_recall_9: 0.8458
Epoch 34/40
23/23 [==============================] - 9s 389ms/step - loss: 0.3479 - accuracy: 0.8579 - precision_9: 0.8686 - recall_9: 0.8468 - val_loss: 0.4770 - val_accuracy: 0.8000 - val_precision_9: 0.8174 - val_recall_9: 0.7833
Epoch 35/40
23/23 [==============================] - 8s 363ms/step - loss: 0.2902 - accuracy: 0.8886 - precision_9: 0.8960 - recall_9: 0.8760 - val_loss: 0.3325 - val_accuracy: 0.8708 - val_precision_9: 0.8803 - val_recall_9: 0.8583
Epoch 36/40
23/23 [==============================] - 9s 405ms/step - loss: 0.2648 - accuracy: 0.8983 - precision_9: 0.9057 - recall_9: 0.8830 - val_loss: 0.3181 - val_accuracy: 0.8958 - val_precision_9: 0.9025 - val_recall_9: 0.8875
Epoch 37/40
23/23 [==============================] - 9s 396ms/step - loss: 0.2929 - accuracy: 0.8900 - precision_9: 0.8983 - recall_9: 0.8733 - val_loss: 0.3758 - val_accuracy: 0.8750 - val_precision_9: 0.8782 - val_recall_9: 0.8708
Epoch 38/40
23/23 [==============================] - 9s 404ms/step - loss: 0.2827 - accuracy: 0.8886 - precision_9: 0.9088 - recall_9: 0.8747 - val_loss: 0.3184 - val_accuracy: 0.8667 - val_precision_9: 0.8961 - val_recall_9: 0.8625
Epoch 39/40
23/23 [==============================] - 8s 357ms/step - loss: 0.2709 - accuracy: 0.8928 - precision_9: 0.9004 - recall_9: 0.8816 - val_loss: 0.3930 - val_accuracy: 0.8458 - val_precision_9: 0.8511 - val_recall_9: 0.8333
Epoch 40/40
23/23 [==============================] - 9s 403ms/step - loss: 0.2728 - accuracy: 0.8886 - precision_9: 0.9052 - recall_9: 0.8774 - val_loss: 0.4244 - val_accuracy: 0.8417 - val_precision_9: 0.8481 - val_recall_9: 0.8375
In [67]:
plt.subplots_adjust(right=1.95, left=.03)

plt.subplot(1,3,1)
plt.plot(history6.history['accuracy'])
plt.plot(history6.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")

plt.subplot(1,3,2)
plt.plot(history6.history['precision_9'])
plt.plot(history6.history['val_precision_9'])
plt.ylabel('Precision')
plt.xlabel('Epoch')

plt.subplot(1,3,3)
plt.plot(history6.history['recall_9'])
plt.plot(history6.history['val_recall_9'])
plt.ylabel('Recall')
plt.xlabel('')

plt.show()
In [69]:
test_loss, test_acc, test_precision, test_recall = model6.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 2s 240ms/step - loss: 0.4022 - accuracy: 0.8458 - precision_9: 0.8517 - recall_9: 0.8375
validation_acc:  84.58
validation_loss: 0.40
validation_precision: 0.85
validation_recall: 0.84

Augmentation: Zoom

In [70]:
model7 = models.Sequential()
model7.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', input_shape = train_ds.image_shape ) )
model7.add(layers.MaxPooling2D(4, 4) )
model7.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model7.add(layers.MaxPooling2D(2, 2) )
model7.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model7.add( Flatten() )
model7.add( Dense( 32, activation = 'relu' ) )
model7.add( Dense( 3, activation = 'softmax' ) )
model7.summary()
Model: "sequential_8"
_________________________________________________________________
 Layer (type)                Output Shape              Param #   
=================================================================
 conv2d_24 (Conv2D)          (None, 126, 126, 32)      896       
                                                                 
 max_pooling2d_16 (MaxPoolin  (None, 31, 31, 32)       0         
 g2D)                                                            
                                                                 
 conv2d_25 (Conv2D)          (None, 29, 29, 16)        4624      
                                                                 
 max_pooling2d_17 (MaxPoolin  (None, 14, 14, 16)       0         
 g2D)                                                            
                                                                 
 conv2d_26 (Conv2D)          (None, 12, 12, 8)         1160      
                                                                 
 flatten_8 (Flatten)         (None, 1152)              0         
                                                                 
 dense_16 (Dense)            (None, 32)                36896     
                                                                 
 dense_17 (Dense)            (None, 3)                 99        
                                                                 
=================================================================
Total params: 43,675
Trainable params: 43,675
Non-trainable params: 0
_________________________________________________________________
In [71]:
datagen = ImageDataGenerator(rescale=1./255, zoom_range=0.2, width_shift_range=0.2, height_shift_range=0.2)
train_ds = datagen.flow_from_directory(
  './bears/training/',
  target_size=(128, 128),
  shuffle=True,
  batch_size=32)

valid_ds = datagen.flow_from_directory(
  './bears/validation/',
  target_size=(128, 128),
  shuffle=True,
  batch_size=32)

test_ds = datagen.flow_from_directory(
  './bears/test/',
  target_size=(128, 128),
  shuffle=True,
  batch_size=32)
Found 718 images belonging to 3 classes.
Found 240 images belonging to 3 classes.
Found 240 images belonging to 3 classes.
In [72]:
N=3
plt.figure (figsize = (10,10))
for my_batch in train_ds:
  images = my_batch[0]
  labels = my_batch[1]
  for x in range(0,3):
    for y in range(0,3):
      plt.subplot(N,N,x*N+y+1)
      plt.axis('off')
      plt.imshow(images[x*N+y])
  break
In [73]:
model7.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()] )
history7 = model7.fit(train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40
23/23 [==============================] - 11s 398ms/step - loss: 0.9455 - accuracy: 0.5543 - precision_10: 0.7824 - recall_10: 0.2103 - val_loss: 0.7524 - val_accuracy: 0.6958 - val_precision_10: 0.7651 - val_recall_10: 0.5292
Epoch 2/40
23/23 [==============================] - 9s 399ms/step - loss: 0.6402 - accuracy: 0.7368 - precision_10: 0.7892 - recall_10: 0.6727 - val_loss: 0.6434 - val_accuracy: 0.7375 - val_precision_10: 0.7600 - val_recall_10: 0.7125
Epoch 3/40
23/23 [==============================] - 9s 398ms/step - loss: 0.6135 - accuracy: 0.7382 - precision_10: 0.7709 - recall_10: 0.7075 - val_loss: 0.7414 - val_accuracy: 0.6750 - val_precision_10: 0.7022 - val_recall_10: 0.6583
Epoch 4/40
23/23 [==============================] - 9s 402ms/step - loss: 0.5621 - accuracy: 0.7841 - precision_10: 0.8061 - recall_10: 0.7409 - val_loss: 0.5477 - val_accuracy: 0.8000 - val_precision_10: 0.8037 - val_recall_10: 0.7333
Epoch 5/40
23/23 [==============================] - 9s 398ms/step - loss: 0.4731 - accuracy: 0.8245 - precision_10: 0.8380 - recall_10: 0.7855 - val_loss: 0.5285 - val_accuracy: 0.8042 - val_precision_10: 0.8190 - val_recall_10: 0.7917
Epoch 6/40
23/23 [==============================] - 11s 498ms/step - loss: 0.4313 - accuracy: 0.8343 - precision_10: 0.8618 - recall_10: 0.8162 - val_loss: 0.5298 - val_accuracy: 0.8000 - val_precision_10: 0.8246 - val_recall_10: 0.7833
Epoch 7/40
23/23 [==============================] - 9s 373ms/step - loss: 0.4052 - accuracy: 0.8454 - precision_10: 0.8650 - recall_10: 0.8301 - val_loss: 0.5077 - val_accuracy: 0.8333 - val_precision_10: 0.8393 - val_recall_10: 0.7833
Epoch 8/40
23/23 [==============================] - 9s 396ms/step - loss: 0.3852 - accuracy: 0.8621 - precision_10: 0.8739 - recall_10: 0.8398 - val_loss: 0.4721 - val_accuracy: 0.8333 - val_precision_10: 0.8498 - val_recall_10: 0.8250
Epoch 9/40
23/23 [==============================] - 9s 398ms/step - loss: 0.3918 - accuracy: 0.8468 - precision_10: 0.8672 - recall_10: 0.8273 - val_loss: 0.4867 - val_accuracy: 0.8333 - val_precision_10: 0.8428 - val_recall_10: 0.8042
Epoch 10/40
23/23 [==============================] - 9s 396ms/step - loss: 0.4498 - accuracy: 0.8231 - precision_10: 0.8446 - recall_10: 0.8022 - val_loss: 0.4524 - val_accuracy: 0.8375 - val_precision_10: 0.8553 - val_recall_10: 0.8125
Epoch 11/40
23/23 [==============================] - 8s 361ms/step - loss: 0.3267 - accuracy: 0.8691 - precision_10: 0.8910 - recall_10: 0.8538 - val_loss: 0.4687 - val_accuracy: 0.8167 - val_precision_10: 0.8348 - val_recall_10: 0.8000
Epoch 12/40
23/23 [==============================] - 9s 389ms/step - loss: 0.3933 - accuracy: 0.8496 - precision_10: 0.8612 - recall_10: 0.8384 - val_loss: 0.4907 - val_accuracy: 0.8375 - val_precision_10: 0.8383 - val_recall_10: 0.8208
Epoch 13/40
23/23 [==============================] - 9s 400ms/step - loss: 0.3713 - accuracy: 0.8621 - precision_10: 0.8755 - recall_10: 0.8426 - val_loss: 0.4152 - val_accuracy: 0.8417 - val_precision_10: 0.8468 - val_recall_10: 0.8292
Epoch 14/40
23/23 [==============================] - 9s 405ms/step - loss: 0.3063 - accuracy: 0.8872 - precision_10: 0.8984 - recall_10: 0.8747 - val_loss: 0.4290 - val_accuracy: 0.8583 - val_precision_10: 0.8577 - val_recall_10: 0.8542
Epoch 15/40
23/23 [==============================] - 8s 359ms/step - loss: 0.3413 - accuracy: 0.8733 - precision_10: 0.8897 - recall_10: 0.8649 - val_loss: 0.4973 - val_accuracy: 0.8125 - val_precision_10: 0.8297 - val_recall_10: 0.7917
Epoch 16/40
23/23 [==============================] - 8s 356ms/step - loss: 0.3362 - accuracy: 0.8802 - precision_10: 0.8994 - recall_10: 0.8719 - val_loss: 0.3626 - val_accuracy: 0.8792 - val_precision_10: 0.8766 - val_recall_10: 0.8583
Epoch 17/40
23/23 [==============================] - 9s 378ms/step - loss: 0.2983 - accuracy: 0.8886 - precision_10: 0.9063 - recall_10: 0.8760 - val_loss: 0.3656 - val_accuracy: 0.8792 - val_precision_10: 0.8771 - val_recall_10: 0.8625
Epoch 18/40
23/23 [==============================] - 10s 445ms/step - loss: 0.3433 - accuracy: 0.8691 - precision_10: 0.8750 - recall_10: 0.8579 - val_loss: 0.6067 - val_accuracy: 0.7792 - val_precision_10: 0.7957 - val_recall_10: 0.7625
Epoch 19/40
23/23 [==============================] - 9s 403ms/step - loss: 0.3469 - accuracy: 0.8816 - precision_10: 0.8929 - recall_10: 0.8593 - val_loss: 0.3885 - val_accuracy: 0.8500 - val_precision_10: 0.8658 - val_recall_10: 0.8333
Epoch 20/40
23/23 [==============================] - 8s 355ms/step - loss: 0.2850 - accuracy: 0.8997 - precision_10: 0.9163 - recall_10: 0.8844 - val_loss: 0.3707 - val_accuracy: 0.8792 - val_precision_10: 0.8828 - val_recall_10: 0.8792
Epoch 21/40
23/23 [==============================] - 9s 400ms/step - loss: 0.2600 - accuracy: 0.9011 - precision_10: 0.9160 - recall_10: 0.8955 - val_loss: 0.3528 - val_accuracy: 0.8875 - val_precision_10: 0.9004 - val_recall_10: 0.8667
Epoch 22/40
23/23 [==============================] - 9s 403ms/step - loss: 0.2756 - accuracy: 0.8914 - precision_10: 0.9020 - recall_10: 0.8844 - val_loss: 0.3884 - val_accuracy: 0.8750 - val_precision_10: 0.8739 - val_recall_10: 0.8667
Epoch 23/40
23/23 [==============================] - 9s 403ms/step - loss: 0.2982 - accuracy: 0.8886 - precision_10: 0.9037 - recall_10: 0.8760 - val_loss: 0.3596 - val_accuracy: 0.8542 - val_precision_10: 0.8638 - val_recall_10: 0.8458
Epoch 24/40
23/23 [==============================] - 8s 358ms/step - loss: 0.2794 - accuracy: 0.8914 - precision_10: 0.9057 - recall_10: 0.8830 - val_loss: 0.4307 - val_accuracy: 0.8208 - val_precision_10: 0.8235 - val_recall_10: 0.8167
Epoch 25/40
23/23 [==============================] - 9s 397ms/step - loss: 0.2515 - accuracy: 0.8955 - precision_10: 0.9058 - recall_10: 0.8844 - val_loss: 0.2992 - val_accuracy: 0.8833 - val_precision_10: 0.9021 - val_recall_10: 0.8833
Epoch 26/40
23/23 [==============================] - 9s 403ms/step - loss: 0.2544 - accuracy: 0.8983 - precision_10: 0.9081 - recall_10: 0.8942 - val_loss: 0.3530 - val_accuracy: 0.8875 - val_precision_10: 0.8927 - val_recall_10: 0.8667
Epoch 27/40
23/23 [==============================] - 9s 392ms/step - loss: 0.2645 - accuracy: 0.8914 - precision_10: 0.8993 - recall_10: 0.8830 - val_loss: 0.3664 - val_accuracy: 0.8583 - val_precision_10: 0.8718 - val_recall_10: 0.8500
Epoch 28/40
23/23 [==============================] - 8s 364ms/step - loss: 0.2435 - accuracy: 0.9136 - precision_10: 0.9244 - recall_10: 0.9025 - val_loss: 0.2806 - val_accuracy: 0.9000 - val_precision_10: 0.8996 - val_recall_10: 0.8958
Epoch 29/40
23/23 [==============================] - 8s 356ms/step - loss: 0.2549 - accuracy: 0.8983 - precision_10: 0.9132 - recall_10: 0.8942 - val_loss: 0.3156 - val_accuracy: 0.8875 - val_precision_10: 0.8979 - val_recall_10: 0.8792
Epoch 30/40
23/23 [==============================] - 9s 391ms/step - loss: 0.2934 - accuracy: 0.8844 - precision_10: 0.8983 - recall_10: 0.8733 - val_loss: 0.4167 - val_accuracy: 0.8417 - val_precision_10: 0.8547 - val_recall_10: 0.8333
Epoch 31/40
23/23 [==============================] - 9s 400ms/step - loss: 0.2823 - accuracy: 0.8983 - precision_10: 0.9077 - recall_10: 0.8900 - val_loss: 0.3616 - val_accuracy: 0.8542 - val_precision_10: 0.8844 - val_recall_10: 0.8292
Epoch 32/40
23/23 [==============================] - 9s 399ms/step - loss: 0.2406 - accuracy: 0.9109 - precision_10: 0.9226 - recall_10: 0.8969 - val_loss: 0.3016 - val_accuracy: 0.8875 - val_precision_10: 0.8866 - val_recall_10: 0.8792
Epoch 33/40
23/23 [==============================] - 8s 355ms/step - loss: 0.2034 - accuracy: 0.9248 - precision_10: 0.9307 - recall_10: 0.9164 - val_loss: 0.3141 - val_accuracy: 0.9000 - val_precision_10: 0.9034 - val_recall_10: 0.8958
Epoch 34/40
23/23 [==============================] - 9s 399ms/step - loss: 0.2069 - accuracy: 0.9206 - precision_10: 0.9317 - recall_10: 0.9123 - val_loss: 0.2949 - val_accuracy: 0.9125 - val_precision_10: 0.9153 - val_recall_10: 0.9000
Epoch 35/40
23/23 [==============================] - 9s 400ms/step - loss: 0.2279 - accuracy: 0.9150 - precision_10: 0.9196 - recall_10: 0.9081 - val_loss: 0.3412 - val_accuracy: 0.9042 - val_precision_10: 0.9072 - val_recall_10: 0.8958
Epoch 36/40
23/23 [==============================] - 9s 407ms/step - loss: 0.2190 - accuracy: 0.9318 - precision_10: 0.9347 - recall_10: 0.9164 - val_loss: 0.3216 - val_accuracy: 0.8875 - val_precision_10: 0.8941 - val_recall_10: 0.8792
Epoch 37/40
23/23 [==============================] - 8s 362ms/step - loss: 0.2352 - accuracy: 0.9220 - precision_10: 0.9355 - recall_10: 0.9095 - val_loss: 0.2962 - val_accuracy: 0.9125 - val_precision_10: 0.9195 - val_recall_10: 0.9042
Epoch 38/40
23/23 [==============================] - 9s 369ms/step - loss: 0.2251 - accuracy: 0.9150 - precision_10: 0.9208 - recall_10: 0.9067 - val_loss: 0.3134 - val_accuracy: 0.8750 - val_precision_10: 0.8894 - val_recall_10: 0.8708
Epoch 39/40
23/23 [==============================] - 9s 414ms/step - loss: 0.2262 - accuracy: 0.9095 - precision_10: 0.9251 - recall_10: 0.8942 - val_loss: 0.3225 - val_accuracy: 0.8750 - val_precision_10: 0.8879 - val_recall_10: 0.8583
Epoch 40/40
23/23 [==============================] - 10s 427ms/step - loss: 0.1681 - accuracy: 0.9387 - precision_10: 0.9423 - recall_10: 0.9331 - val_loss: 0.3451 - val_accuracy: 0.8750 - val_precision_10: 0.8750 - val_recall_10: 0.8750
In [75]:
plt.subplots_adjust(right=1.95, left=.03)

plt.subplot(1,3,1)
plt.plot(history7.history['accuracy'])
plt.plot(history7.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")

plt.subplot(1,3,2)
plt.plot(history7.history['precision_10'])
plt.plot(history7.history['val_precision_10'])
plt.ylabel('Precision')
plt.xlabel('Epoch')

plt.subplot(1,3,3)
plt.plot(history7.history['recall_10'])
plt.plot(history7.history['val_recall_10'])
plt.ylabel('Recall')
plt.xlabel('')

plt.show()
In [76]:
test_loss, test_acc, test_precision, test_recall = model7.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 3s 359ms/step - loss: 0.2866 - accuracy: 0.8708 - precision_10: 0.8932 - recall_10: 0.8708
validation_acc:  87.08
validation_loss: 0.29
validation_precision: 0.89
validation_recall: 0.87

Task 4: Effects of Regularization¶

Batch Normalization

In [77]:
from tensorflow.keras.layers import BatchNormalization, Dropout
In [78]:
datagen = ImageDataGenerator(
    rescale=1./255)

train_ds = datagen.flow_from_directory(
  './bears/training/',
  target_size=(48, 48),
  shuffle=True,
  batch_size=32)

valid_ds = datagen.flow_from_directory(
  './bears/validation/',
  target_size=(48, 48),
  shuffle=True,
  batch_size=32)

test_ds = datagen.flow_from_directory(
    './bears/test/',
    target_size=(48, 48),
    shuffle=True,
    batch_size=32
)
Found 718 images belonging to 3 classes.
Found 240 images belonging to 3 classes.
Found 240 images belonging to 3 classes.
In [82]:
model8 = models.Sequential()
model8.add(BatchNormalization())
model8.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', input_shape = train_ds.image_shape ) )
model8.add(layers.MaxPooling2D(4, 4) )
model8.add(BatchNormalization())
model8.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model8.add(layers.MaxPooling2D(2, 2) )
model8.add(BatchNormalization())
model8.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model8.add( Flatten() )
model8.add( Dense( 8, activation = 'relu' ) )
model8.add( Dense( 3, activation = 'softmax' ) )
#model8.summary()
In [85]:
model8.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()] )
history8 = model8.fit(train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40
23/23 [==============================] - 8s 239ms/step - loss: 0.9441 - accuracy: 0.5223 - precision_12: 0.6274 - recall_12: 0.3705 - val_loss: 1.0266 - val_accuracy: 0.5333 - val_precision_12: 0.0000e+00 - val_recall_12: 0.0000e+00
Epoch 2/40
23/23 [==============================] - 5s 225ms/step - loss: 0.5713 - accuracy: 0.7883 - precision_12: 0.8818 - recall_12: 0.6546 - val_loss: 0.9744 - val_accuracy: 0.5917 - val_precision_12: 0.9423 - val_recall_12: 0.2042
Epoch 3/40
23/23 [==============================] - 5s 237ms/step - loss: 0.3867 - accuracy: 0.8677 - precision_12: 0.9163 - recall_12: 0.8231 - val_loss: 1.0665 - val_accuracy: 0.6083 - val_precision_12: 0.8025 - val_recall_12: 0.5250
Epoch 4/40
23/23 [==============================] - 6s 271ms/step - loss: 0.2817 - accuracy: 0.9095 - precision_12: 0.9304 - recall_12: 0.8747 - val_loss: 1.2843 - val_accuracy: 0.5292 - val_precision_12: 0.5604 - val_recall_12: 0.4833
Epoch 5/40
23/23 [==============================] - 6s 274ms/step - loss: 0.2582 - accuracy: 0.8969 - precision_12: 0.9217 - recall_12: 0.8858 - val_loss: 1.4078 - val_accuracy: 0.5750 - val_precision_12: 0.6009 - val_recall_12: 0.5708
Epoch 6/40
23/23 [==============================] - 5s 230ms/step - loss: 0.2091 - accuracy: 0.9276 - precision_12: 0.9428 - recall_12: 0.9178 - val_loss: 1.5227 - val_accuracy: 0.5667 - val_precision_12: 0.5895 - val_recall_12: 0.5625
Epoch 7/40
23/23 [==============================] - 5s 223ms/step - loss: 0.1943 - accuracy: 0.9262 - precision_12: 0.9400 - recall_12: 0.9164 - val_loss: 1.6309 - val_accuracy: 0.6000 - val_precision_12: 0.6008 - val_recall_12: 0.5958
Epoch 8/40
23/23 [==============================] - 6s 265ms/step - loss: 0.1463 - accuracy: 0.9582 - precision_12: 0.9672 - recall_12: 0.9443 - val_loss: 1.6645 - val_accuracy: 0.6125 - val_precision_12: 0.6134 - val_recall_12: 0.6083
Epoch 9/40
23/23 [==============================] - 5s 227ms/step - loss: 0.1333 - accuracy: 0.9540 - precision_12: 0.9674 - recall_12: 0.9499 - val_loss: 1.6195 - val_accuracy: 0.6125 - val_precision_12: 0.6213 - val_recall_12: 0.6083
Epoch 10/40
23/23 [==============================] - 5s 228ms/step - loss: 0.0894 - accuracy: 0.9763 - precision_12: 0.9816 - recall_12: 0.9638 - val_loss: 1.5269 - val_accuracy: 0.6208 - val_precision_12: 0.6255 - val_recall_12: 0.6125
Epoch 11/40
23/23 [==============================] - 5s 228ms/step - loss: 0.0937 - accuracy: 0.9680 - precision_12: 0.9788 - recall_12: 0.9624 - val_loss: 1.4937 - val_accuracy: 0.6250 - val_precision_12: 0.6287 - val_recall_12: 0.6208
Epoch 12/40
23/23 [==============================] - 5s 225ms/step - loss: 0.0694 - accuracy: 0.9819 - precision_12: 0.9859 - recall_12: 0.9735 - val_loss: 1.2565 - val_accuracy: 0.6625 - val_precision_12: 0.6840 - val_recall_12: 0.6583
Epoch 13/40
23/23 [==============================] - 5s 239ms/step - loss: 0.0711 - accuracy: 0.9749 - precision_12: 0.9817 - recall_12: 0.9708 - val_loss: 1.1925 - val_accuracy: 0.6750 - val_precision_12: 0.6766 - val_recall_12: 0.6625
Epoch 14/40
23/23 [==============================] - 6s 261ms/step - loss: 0.0569 - accuracy: 0.9903 - precision_12: 0.9916 - recall_12: 0.9861 - val_loss: 1.0054 - val_accuracy: 0.7375 - val_precision_12: 0.7457 - val_recall_12: 0.7208
Epoch 15/40
23/23 [==============================] - 5s 231ms/step - loss: 0.0501 - accuracy: 0.9889 - precision_12: 0.9930 - recall_12: 0.9819 - val_loss: 0.9031 - val_accuracy: 0.7750 - val_precision_12: 0.7821 - val_recall_12: 0.7625
Epoch 16/40
23/23 [==============================] - 6s 273ms/step - loss: 0.0389 - accuracy: 0.9930 - precision_12: 0.9958 - recall_12: 0.9903 - val_loss: 0.7489 - val_accuracy: 0.8167 - val_precision_12: 0.8170 - val_recall_12: 0.8000
Epoch 17/40
23/23 [==============================] - 5s 223ms/step - loss: 0.0437 - accuracy: 0.9889 - precision_12: 0.9930 - recall_12: 0.9833 - val_loss: 0.7203 - val_accuracy: 0.7958 - val_precision_12: 0.8017 - val_recall_12: 0.7750
Epoch 18/40
23/23 [==============================] - 5s 223ms/step - loss: 0.0415 - accuracy: 0.9889 - precision_12: 0.9916 - recall_12: 0.9889 - val_loss: 0.5785 - val_accuracy: 0.8000 - val_precision_12: 0.8136 - val_recall_12: 0.8000
Epoch 19/40
23/23 [==============================] - 6s 267ms/step - loss: 0.0278 - accuracy: 0.9958 - precision_12: 0.9986 - recall_12: 0.9916 - val_loss: 0.4128 - val_accuracy: 0.8625 - val_precision_12: 0.8613 - val_recall_12: 0.8542
Epoch 20/40
23/23 [==============================] - 6s 244ms/step - loss: 0.0255 - accuracy: 0.9944 - precision_12: 0.9972 - recall_12: 0.9916 - val_loss: 0.3741 - val_accuracy: 0.8875 - val_precision_12: 0.8932 - val_recall_12: 0.8708
Epoch 21/40
23/23 [==============================] - 6s 265ms/step - loss: 0.0218 - accuracy: 0.9972 - precision_12: 0.9986 - recall_12: 0.9958 - val_loss: 0.4373 - val_accuracy: 0.8833 - val_precision_12: 0.8903 - val_recall_12: 0.8792
Epoch 22/40
23/23 [==============================] - 5s 227ms/step - loss: 0.0314 - accuracy: 0.9875 - precision_12: 0.9888 - recall_12: 0.9861 - val_loss: 0.3700 - val_accuracy: 0.9042 - val_precision_12: 0.9076 - val_recall_12: 0.9000
Epoch 23/40
23/23 [==============================] - 5s 233ms/step - loss: 0.0291 - accuracy: 0.9903 - precision_12: 0.9930 - recall_12: 0.9889 - val_loss: 0.4068 - val_accuracy: 0.8792 - val_precision_12: 0.8819 - val_recall_12: 0.8708
Epoch 24/40
23/23 [==============================] - 5s 227ms/step - loss: 0.0213 - accuracy: 0.9916 - precision_12: 0.9944 - recall_12: 0.9916 - val_loss: 0.4368 - val_accuracy: 0.8917 - val_precision_12: 0.8987 - val_recall_12: 0.8875
Epoch 25/40
23/23 [==============================] - 6s 271ms/step - loss: 0.0164 - accuracy: 0.9958 - precision_12: 0.9986 - recall_12: 0.9944 - val_loss: 0.3443 - val_accuracy: 0.9208 - val_precision_12: 0.9208 - val_recall_12: 0.9208
Epoch 26/40
23/23 [==============================] - 7s 300ms/step - loss: 0.0125 - accuracy: 0.9972 - precision_12: 1.0000 - recall_12: 0.9958 - val_loss: 0.3589 - val_accuracy: 0.9125 - val_precision_12: 0.9125 - val_recall_12: 0.9125
Epoch 27/40
23/23 [==============================] - 5s 226ms/step - loss: 0.0114 - accuracy: 0.9986 - precision_12: 1.0000 - recall_12: 0.9958 - val_loss: 0.3599 - val_accuracy: 0.9167 - val_precision_12: 0.9167 - val_recall_12: 0.9167
Epoch 28/40
23/23 [==============================] - 5s 235ms/step - loss: 0.0105 - accuracy: 1.0000 - precision_12: 1.0000 - recall_12: 0.9958 - val_loss: 0.3670 - val_accuracy: 0.9083 - val_precision_12: 0.9160 - val_recall_12: 0.9083
In [86]:
plt.subplots_adjust(right=1.95, left=.03)

plt.subplot(1,3,1)
plt.plot(history8.history['accuracy'])
plt.plot(history8.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")

plt.subplot(1,3,2)
plt.plot(history8.history['precision_12'])
plt.plot(history8.history['val_precision_12'])
plt.ylabel('Precision')
plt.xlabel('Epoch')

plt.subplot(1,3,3)
plt.plot(history8.history['recall_12'])
plt.plot(history8.history['val_recall_12'])
plt.ylabel('Recall')
plt.xlabel('')

plt.show()
In [87]:
test_loss, test_acc, test_precision, test_recall = model8.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 2s 227ms/step - loss: 0.5520 - accuracy: 0.8667 - precision_12: 0.8667 - recall_12: 0.8667
validation_acc:  86.67
validation_loss: 0.55
validation_precision: 0.87
validation_recall: 0.87

BatchNormalization and Dropout

In [90]:
model9 = models.Sequential()
model9.add(BatchNormalization())
model9.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', input_shape = train_ds.image_shape ) )
model9.add(layers.MaxPooling2D(4, 4) )
model9.add(Dropout(rate=0.2))
model9.add(BatchNormalization())
model9.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu' ) )
model9.add(layers.MaxPooling2D(2, 2) )
model9.add(Dropout(rate=0.2))
model9.add(BatchNormalization())
model9.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu' ) )
model9.add( Flatten() )
model9.add( Dense( 8, activation = 'relu' ) )
model9.add( Dense( 3, activation = 'softmax' ) )
#model9.summary()
In [91]:
model9.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()] )
history9 = model9.fit(train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40
23/23 [==============================] - 9s 268ms/step - loss: 1.0042 - accuracy: 0.5125 - precision_13: 0.5860 - recall_13: 0.3370 - val_loss: 1.1479 - val_accuracy: 0.3250 - val_precision_13: 0.7647 - val_recall_13: 0.1083
Epoch 2/40
23/23 [==============================] - 6s 270ms/step - loss: 0.6873 - accuracy: 0.7354 - precision_13: 0.8073 - recall_13: 0.6128 - val_loss: 1.3593 - val_accuracy: 0.3083 - val_precision_13: 0.3136 - val_recall_13: 0.3083
Epoch 3/40
23/23 [==============================] - 5s 231ms/step - loss: 0.4863 - accuracy: 0.8120 - precision_13: 0.8483 - recall_13: 0.7632 - val_loss: 1.6670 - val_accuracy: 0.3083 - val_precision_13: 0.3096 - val_recall_13: 0.3083
Epoch 4/40
23/23 [==============================] - 6s 253ms/step - loss: 0.4306 - accuracy: 0.8287 - precision_13: 0.8546 - recall_13: 0.8106 - val_loss: 1.7823 - val_accuracy: 0.3083 - val_precision_13: 0.3083 - val_recall_13: 0.3083
Epoch 5/40
23/23 [==============================] - 5s 231ms/step - loss: 0.4079 - accuracy: 0.8454 - precision_13: 0.8596 - recall_13: 0.8357 - val_loss: 1.8540 - val_accuracy: 0.3292 - val_precision_13: 0.3263 - val_recall_13: 0.3208
Epoch 6/40
23/23 [==============================] - 5s 231ms/step - loss: 0.3582 - accuracy: 0.8552 - precision_13: 0.8763 - recall_13: 0.8384 - val_loss: 2.0054 - val_accuracy: 0.3125 - val_precision_13: 0.3138 - val_recall_13: 0.3125
Epoch 7/40
23/23 [==============================] - 5s 230ms/step - loss: 0.3352 - accuracy: 0.8802 - precision_13: 0.8932 - recall_13: 0.8621 - val_loss: 1.8412 - val_accuracy: 0.3500 - val_precision_13: 0.3502 - val_recall_13: 0.3458
Epoch 8/40
23/23 [==============================] - 6s 245ms/step - loss: 0.2906 - accuracy: 0.8844 - precision_13: 0.8961 - recall_13: 0.8649 - val_loss: 2.2412 - val_accuracy: 0.3292 - val_precision_13: 0.3264 - val_recall_13: 0.3250
Epoch 9/40
23/23 [==============================] - 7s 319ms/step - loss: 0.3233 - accuracy: 0.8872 - precision_13: 0.8959 - recall_13: 0.8747 - val_loss: 1.8108 - val_accuracy: 0.3833 - val_precision_13: 0.3866 - val_recall_13: 0.3833
Epoch 10/40
23/23 [==============================] - 5s 227ms/step - loss: 0.3109 - accuracy: 0.8830 - precision_13: 0.8913 - recall_13: 0.8677 - val_loss: 1.7448 - val_accuracy: 0.4208 - val_precision_13: 0.4298 - val_recall_13: 0.4208
Epoch 11/40
23/23 [==============================] - 5s 238ms/step - loss: 0.3072 - accuracy: 0.8844 - precision_13: 0.8944 - recall_13: 0.8733 - val_loss: 1.6899 - val_accuracy: 0.4208 - val_precision_13: 0.4219 - val_recall_13: 0.4167
Epoch 12/40
23/23 [==============================] - 6s 273ms/step - loss: 0.2617 - accuracy: 0.8969 - precision_13: 0.9173 - recall_13: 0.8802 - val_loss: 1.5288 - val_accuracy: 0.4833 - val_precision_13: 0.4934 - val_recall_13: 0.4708
Epoch 13/40
23/23 [==============================] - 6s 271ms/step - loss: 0.2286 - accuracy: 0.9178 - precision_13: 0.9289 - recall_13: 0.9095 - val_loss: 1.3710 - val_accuracy: 0.5292 - val_precision_13: 0.5368 - val_recall_13: 0.5167
Epoch 14/40
23/23 [==============================] - 5s 225ms/step - loss: 0.2494 - accuracy: 0.9123 - precision_13: 0.9169 - recall_13: 0.9067 - val_loss: 1.1418 - val_accuracy: 0.6125 - val_precision_13: 0.6245 - val_recall_13: 0.5958
Epoch 15/40
23/23 [==============================] - 7s 291ms/step - loss: 0.2521 - accuracy: 0.8969 - precision_13: 0.9040 - recall_13: 0.8914 - val_loss: 0.9110 - val_accuracy: 0.6750 - val_precision_13: 0.6798 - val_recall_13: 0.6458
Epoch 16/40
23/23 [==============================] - 5s 235ms/step - loss: 0.2195 - accuracy: 0.9220 - precision_13: 0.9303 - recall_13: 0.9109 - val_loss: 1.0418 - val_accuracy: 0.6500 - val_precision_13: 0.6581 - val_recall_13: 0.6417
Epoch 17/40
23/23 [==============================] - 6s 252ms/step - loss: 0.2290 - accuracy: 0.9178 - precision_13: 0.9277 - recall_13: 0.9109 - val_loss: 0.6351 - val_accuracy: 0.7583 - val_precision_13: 0.7743 - val_recall_13: 0.7292
Epoch 18/40
23/23 [==============================] - 5s 226ms/step - loss: 0.1801 - accuracy: 0.9331 - precision_13: 0.9393 - recall_13: 0.9262 - val_loss: 0.6412 - val_accuracy: 0.7625 - val_precision_13: 0.7716 - val_recall_13: 0.7458
Epoch 19/40
23/23 [==============================] - 5s 224ms/step - loss: 0.2274 - accuracy: 0.9192 - precision_13: 0.9234 - recall_13: 0.9067 - val_loss: 0.5684 - val_accuracy: 0.7917 - val_precision_13: 0.7915 - val_recall_13: 0.7750
Epoch 20/40
23/23 [==============================] - 6s 268ms/step - loss: 0.2116 - accuracy: 0.9290 - precision_13: 0.9361 - recall_13: 0.9178 - val_loss: 0.4921 - val_accuracy: 0.8250 - val_precision_13: 0.8369 - val_recall_13: 0.8125
Epoch 21/40
23/23 [==============================] - 5s 227ms/step - loss: 0.1832 - accuracy: 0.9290 - precision_13: 0.9392 - recall_13: 0.9248 - val_loss: 0.4802 - val_accuracy: 0.8333 - val_precision_13: 0.8498 - val_recall_13: 0.8250
Epoch 22/40
23/23 [==============================] - 5s 223ms/step - loss: 0.1891 - accuracy: 0.9373 - precision_13: 0.9463 - recall_13: 0.9331 - val_loss: 0.6082 - val_accuracy: 0.7875 - val_precision_13: 0.8008 - val_recall_13: 0.7875
Epoch 23/40
23/23 [==============================] - 6s 257ms/step - loss: 0.1737 - accuracy: 0.9429 - precision_13: 0.9453 - recall_13: 0.9387 - val_loss: 0.4336 - val_accuracy: 0.8500 - val_precision_13: 0.8670 - val_recall_13: 0.8417
Epoch 24/40
23/23 [==============================] - 5s 232ms/step - loss: 0.1806 - accuracy: 0.9290 - precision_13: 0.9301 - recall_13: 0.9262 - val_loss: 0.5655 - val_accuracy: 0.8167 - val_precision_13: 0.8213 - val_recall_13: 0.8042
Epoch 25/40
23/23 [==============================] - 6s 262ms/step - loss: 0.1896 - accuracy: 0.9331 - precision_13: 0.9364 - recall_13: 0.9234 - val_loss: 0.6043 - val_accuracy: 0.7917 - val_precision_13: 0.8034 - val_recall_13: 0.7833
Epoch 26/40
23/23 [==============================] - 5s 225ms/step - loss: 0.1755 - accuracy: 0.9290 - precision_13: 0.9433 - recall_13: 0.9276 - val_loss: 0.4188 - val_accuracy: 0.8625 - val_precision_13: 0.8803 - val_recall_13: 0.8583
Epoch 27/40
23/23 [==============================] - 6s 272ms/step - loss: 0.1528 - accuracy: 0.9443 - precision_13: 0.9494 - recall_13: 0.9415 - val_loss: 0.5206 - val_accuracy: 0.8250 - val_precision_13: 0.8405 - val_recall_13: 0.8125
Epoch 28/40
23/23 [==============================] - 6s 286ms/step - loss: 0.1516 - accuracy: 0.9499 - precision_13: 0.9562 - recall_13: 0.9415 - val_loss: 0.4109 - val_accuracy: 0.8667 - val_precision_13: 0.8761 - val_recall_13: 0.8542
Epoch 29/40
23/23 [==============================] - 5s 229ms/step - loss: 0.1617 - accuracy: 0.9387 - precision_13: 0.9437 - recall_13: 0.9345 - val_loss: 0.3815 - val_accuracy: 0.8750 - val_precision_13: 0.8824 - val_recall_13: 0.8750
Epoch 30/40
23/23 [==============================] - 6s 252ms/step - loss: 0.1620 - accuracy: 0.9387 - precision_13: 0.9437 - recall_13: 0.9331 - val_loss: 0.3790 - val_accuracy: 0.8583 - val_precision_13: 0.8729 - val_recall_13: 0.8583
Epoch 31/40
23/23 [==============================] - 5s 225ms/step - loss: 0.1310 - accuracy: 0.9526 - precision_13: 0.9552 - recall_13: 0.9499 - val_loss: 0.3599 - val_accuracy: 0.8708 - val_precision_13: 0.8819 - val_recall_13: 0.8708
Epoch 32/40
23/23 [==============================] - 6s 267ms/step - loss: 0.1418 - accuracy: 0.9485 - precision_13: 0.9508 - recall_13: 0.9429 - val_loss: 0.3770 - val_accuracy: 0.8667 - val_precision_13: 0.8734 - val_recall_13: 0.8625
Epoch 33/40
23/23 [==============================] - 5s 230ms/step - loss: 0.1496 - accuracy: 0.9443 - precision_13: 0.9549 - recall_13: 0.9429 - val_loss: 0.4178 - val_accuracy: 0.8625 - val_precision_13: 0.8729 - val_recall_13: 0.8583
Epoch 34/40
23/23 [==============================] - 5s 225ms/step - loss: 0.1236 - accuracy: 0.9526 - precision_13: 0.9565 - recall_13: 0.9485 - val_loss: 0.4206 - val_accuracy: 0.8708 - val_precision_13: 0.8782 - val_recall_13: 0.8708
Epoch 35/40
23/23 [==============================] - 6s 270ms/step - loss: 0.1062 - accuracy: 0.9666 - precision_13: 0.9691 - recall_13: 0.9624 - val_loss: 0.3430 - val_accuracy: 0.8875 - val_precision_13: 0.8983 - val_recall_13: 0.8833
Epoch 36/40
23/23 [==============================] - 6s 286ms/step - loss: 0.1250 - accuracy: 0.9568 - precision_13: 0.9592 - recall_13: 0.9485 - val_loss: 0.3826 - val_accuracy: 0.8792 - val_precision_13: 0.8903 - val_recall_13: 0.8792
Epoch 37/40
23/23 [==============================] - 6s 278ms/step - loss: 0.1068 - accuracy: 0.9596 - precision_13: 0.9621 - recall_13: 0.9540 - val_loss: 0.4430 - val_accuracy: 0.8750 - val_precision_13: 0.8861 - val_recall_13: 0.8750
Epoch 38/40
23/23 [==============================] - 6s 265ms/step - loss: 0.1101 - accuracy: 0.9652 - precision_13: 0.9651 - recall_13: 0.9624 - val_loss: 0.4221 - val_accuracy: 0.8833 - val_precision_13: 0.8841 - val_recall_13: 0.8583
Epoch 39/40
23/23 [==============================] - 5s 228ms/step - loss: 0.0955 - accuracy: 0.9680 - precision_13: 0.9732 - recall_13: 0.9610 - val_loss: 0.5375 - val_accuracy: 0.8375 - val_precision_13: 0.8475 - val_recall_13: 0.8333
Epoch 40/40
23/23 [==============================] - 6s 265ms/step - loss: 0.1159 - accuracy: 0.9568 - precision_13: 0.9581 - recall_13: 0.9554 - val_loss: 0.3220 - val_accuracy: 0.9042 - val_precision_13: 0.9072 - val_recall_13: 0.8958
In [93]:
plt.subplots_adjust(right=1.95, left=.03)

plt.subplot(1,3,1)
plt.plot(history9.history['accuracy'])
plt.plot(history9.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")

plt.subplot(1,3,2)
plt.plot(history9.history['precision_13'])
plt.plot(history9.history['val_precision_13'])
plt.ylabel('Precision')
plt.xlabel('Epoch')

plt.subplot(1,3,3)
plt.plot(history9.history['recall_13'])
plt.plot(history9.history['val_recall_13'])
plt.ylabel('Recall')
plt.xlabel('')

plt.show()
In [94]:
test_loss, test_acc, test_precision, test_recall = model9.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 1s 150ms/step - loss: 0.3654 - accuracy: 0.8625 - precision_13: 0.8692 - recall_13: 0.8583
validation_acc:  86.25
validation_loss: 0.37
validation_precision: 0.87
validation_recall: 0.86

Batch Normalization, Dropout, and L2 Regularization

In [97]:
model10 = models.Sequential()
model10.add(BatchNormalization())
model10.add(layers.Conv2D( 32, ( 3, 3 ), activation = 'relu', kernel_regularizer="l2", input_shape = train_ds.image_shape ) )
model10.add(layers.MaxPooling2D(4, 4) )
model10.add(Dropout(rate=0.2))
model10.add(BatchNormalization())
model10.add(layers.Conv2D( 16, ( 3, 3 ), activation = 'relu', kernel_regularizer="l2" ) )
model10.add(layers.MaxPooling2D(2, 2) )
model10.add(Dropout(rate=0.2))
model10.add(BatchNormalization())
model10.add(layers.Conv2D( 8, ( 3, 3 ), activation = 'relu', kernel_regularizer="l2" ) )
model10.add( Flatten() )
model10.add( Dense( 8, activation = 'relu' ) )
model10.add( Dense( 3, activation = 'softmax' ) )
#model10.summary()
In [98]:
model10.compile(optimizer = 'adam', loss = 'categorical_crossentropy', metrics=['accuracy', Precision(), Recall()] )
history10 = model10.fit(train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40
23/23 [==============================] - 10s 268ms/step - loss: 1.4167 - accuracy: 0.4220 - precision_14: 0.4431 - recall_14: 0.2006 - val_loss: 1.4548 - val_accuracy: 0.4542 - val_precision_14: 0.0000e+00 - val_recall_14: 0.0000e+00
Epoch 2/40
23/23 [==============================] - 6s 272ms/step - loss: 1.1355 - accuracy: 0.6699 - precision_14: 0.7740 - recall_14: 0.4721 - val_loss: 1.4323 - val_accuracy: 0.3208 - val_precision_14: 0.0000e+00 - val_recall_14: 0.0000e+00
Epoch 3/40
23/23 [==============================] - 7s 292ms/step - loss: 0.9212 - accuracy: 0.8022 - precision_14: 0.8510 - recall_14: 0.7159 - val_loss: 1.3951 - val_accuracy: 0.3417 - val_precision_14: 0.7386 - val_recall_14: 0.2708
Epoch 4/40
23/23 [==============================] - 5s 226ms/step - loss: 0.7713 - accuracy: 0.8468 - precision_14: 0.8778 - recall_14: 0.8106 - val_loss: 1.4383 - val_accuracy: 0.3208 - val_precision_14: 0.3627 - val_recall_14: 0.3083
Epoch 5/40
23/23 [==============================] - 5s 226ms/step - loss: 0.7199 - accuracy: 0.8579 - precision_14: 0.8721 - recall_14: 0.8357 - val_loss: 1.5353 - val_accuracy: 0.3208 - val_precision_14: 0.3260 - val_recall_14: 0.3083
Epoch 6/40
23/23 [==============================] - 7s 292ms/step - loss: 0.6551 - accuracy: 0.8621 - precision_14: 0.8887 - recall_14: 0.8454 - val_loss: 1.5146 - val_accuracy: 0.3667 - val_precision_14: 0.3853 - val_recall_14: 0.3500
Epoch 7/40
23/23 [==============================] - 6s 277ms/step - loss: 0.6161 - accuracy: 0.8830 - precision_14: 0.9016 - recall_14: 0.8677 - val_loss: 1.5988 - val_accuracy: 0.3542 - val_precision_14: 0.3624 - val_recall_14: 0.3458
Epoch 8/40
23/23 [==============================] - 6s 250ms/step - loss: 0.5888 - accuracy: 0.8928 - precision_14: 0.9130 - recall_14: 0.8774 - val_loss: 1.7146 - val_accuracy: 0.3583 - val_precision_14: 0.3596 - val_recall_14: 0.3417
Epoch 9/40
23/23 [==============================] - 7s 318ms/step - loss: 0.5462 - accuracy: 0.9011 - precision_14: 0.9147 - recall_14: 0.8955 - val_loss: 1.6192 - val_accuracy: 0.3958 - val_precision_14: 0.4105 - val_recall_14: 0.3917
Epoch 10/40
23/23 [==============================] - 5s 230ms/step - loss: 0.5460 - accuracy: 0.8788 - precision_14: 0.8951 - recall_14: 0.8677 - val_loss: 1.5030 - val_accuracy: 0.4375 - val_precision_14: 0.4513 - val_recall_14: 0.4250
Epoch 11/40
23/23 [==============================] - 6s 261ms/step - loss: 0.5238 - accuracy: 0.8969 - precision_14: 0.9127 - recall_14: 0.8886 - val_loss: 1.4150 - val_accuracy: 0.4958 - val_precision_14: 0.5022 - val_recall_14: 0.4750
Epoch 12/40
23/23 [==============================] - 5s 229ms/step - loss: 0.4984 - accuracy: 0.9109 - precision_14: 0.9226 - recall_14: 0.8969 - val_loss: 1.3288 - val_accuracy: 0.5458 - val_precision_14: 0.5628 - val_recall_14: 0.5417
Epoch 13/40
23/23 [==============================] - 6s 266ms/step - loss: 0.4864 - accuracy: 0.9067 - precision_14: 0.9137 - recall_14: 0.8997 - val_loss: 1.2457 - val_accuracy: 0.5667 - val_precision_14: 0.5696 - val_recall_14: 0.5458
Epoch 14/40
23/23 [==============================] - 6s 276ms/step - loss: 0.4455 - accuracy: 0.9178 - precision_14: 0.9329 - recall_14: 0.9095 - val_loss: 1.2140 - val_accuracy: 0.5792 - val_precision_14: 0.5982 - val_recall_14: 0.5583
Epoch 15/40
23/23 [==============================] - 5s 229ms/step - loss: 0.4291 - accuracy: 0.9248 - precision_14: 0.9437 - recall_14: 0.9109 - val_loss: 1.1608 - val_accuracy: 0.6000 - val_precision_14: 0.6267 - val_recall_14: 0.5875
Epoch 16/40
23/23 [==============================] - 6s 272ms/step - loss: 0.3960 - accuracy: 0.9304 - precision_14: 0.9379 - recall_14: 0.9248 - val_loss: 0.9980 - val_accuracy: 0.7000 - val_precision_14: 0.7149 - val_recall_14: 0.6792
Epoch 17/40
23/23 [==============================] - 6s 272ms/step - loss: 0.4125 - accuracy: 0.9220 - precision_14: 0.9315 - recall_14: 0.9095 - val_loss: 0.9887 - val_accuracy: 0.6792 - val_precision_14: 0.6991 - val_recall_14: 0.6583
Epoch 18/40
23/23 [==============================] - 6s 242ms/step - loss: 0.3956 - accuracy: 0.9234 - precision_14: 0.9293 - recall_14: 0.9150 - val_loss: 0.9025 - val_accuracy: 0.7042 - val_precision_14: 0.7313 - val_recall_14: 0.6917
Epoch 19/40
23/23 [==============================] - 6s 257ms/step - loss: 0.3529 - accuracy: 0.9443 - precision_14: 0.9532 - recall_14: 0.9359 - val_loss: 0.7821 - val_accuracy: 0.7625 - val_precision_14: 0.7759 - val_recall_14: 0.7500
Epoch 20/40
23/23 [==============================] - 5s 229ms/step - loss: 0.3562 - accuracy: 0.9318 - precision_14: 0.9407 - recall_14: 0.9276 - val_loss: 0.7986 - val_accuracy: 0.7625 - val_precision_14: 0.7759 - val_recall_14: 0.7500
Epoch 21/40
23/23 [==============================] - 6s 271ms/step - loss: 0.3226 - accuracy: 0.9499 - precision_14: 0.9589 - recall_14: 0.9415 - val_loss: 0.6832 - val_accuracy: 0.7958 - val_precision_14: 0.8085 - val_recall_14: 0.7917
Epoch 22/40
23/23 [==============================] - 6s 272ms/step - loss: 0.3280 - accuracy: 0.9401 - precision_14: 0.9434 - recall_14: 0.9290 - val_loss: 0.6698 - val_accuracy: 0.7958 - val_precision_14: 0.8069 - val_recall_14: 0.7833
Epoch 23/40
23/23 [==============================] - 5s 235ms/step - loss: 0.3291 - accuracy: 0.9345 - precision_14: 0.9448 - recall_14: 0.9290 - val_loss: 0.7394 - val_accuracy: 0.7542 - val_precision_14: 0.7686 - val_recall_14: 0.7333
Epoch 24/40
23/23 [==============================] - 7s 294ms/step - loss: 0.3196 - accuracy: 0.9485 - precision_14: 0.9549 - recall_14: 0.9429 - val_loss: 0.6839 - val_accuracy: 0.8083 - val_precision_14: 0.8093 - val_recall_14: 0.7958
Epoch 25/40
23/23 [==============================] - 5s 232ms/step - loss: 0.2882 - accuracy: 0.9499 - precision_14: 0.9522 - recall_14: 0.9443 - val_loss: 0.6459 - val_accuracy: 0.8000 - val_precision_14: 0.8093 - val_recall_14: 0.7958
Epoch 26/40
23/23 [==============================] - 6s 277ms/step - loss: 0.2703 - accuracy: 0.9582 - precision_14: 0.9635 - recall_14: 0.9554 - val_loss: 0.5214 - val_accuracy: 0.8500 - val_precision_14: 0.8536 - val_recall_14: 0.8500
Epoch 27/40
23/23 [==============================] - 5s 228ms/step - loss: 0.2790 - accuracy: 0.9526 - precision_14: 0.9590 - recall_14: 0.9457 - val_loss: 0.6013 - val_accuracy: 0.8042 - val_precision_14: 0.8067 - val_recall_14: 0.8000
Epoch 28/40
23/23 [==============================] - 5s 228ms/step - loss: 0.2899 - accuracy: 0.9526 - precision_14: 0.9552 - recall_14: 0.9499 - val_loss: 0.6835 - val_accuracy: 0.7875 - val_precision_14: 0.7941 - val_recall_14: 0.7875
Epoch 29/40
23/23 [==============================] - 6s 269ms/step - loss: 0.2519 - accuracy: 0.9582 - precision_14: 0.9635 - recall_14: 0.9568 - val_loss: 0.4375 - val_accuracy: 0.8792 - val_precision_14: 0.8828 - val_recall_14: 0.8792
Epoch 30/40
23/23 [==============================] - 5s 228ms/step - loss: 0.2569 - accuracy: 0.9513 - precision_14: 0.9550 - recall_14: 0.9457 - val_loss: 0.5259 - val_accuracy: 0.8542 - val_precision_14: 0.8681 - val_recall_14: 0.8500
Epoch 31/40
23/23 [==============================] - 6s 272ms/step - loss: 0.2328 - accuracy: 0.9708 - precision_14: 0.9721 - recall_14: 0.9708 - val_loss: 0.4067 - val_accuracy: 0.8958 - val_precision_14: 0.8996 - val_recall_14: 0.8958
Epoch 32/40
23/23 [==============================] - 5s 227ms/step - loss: 0.2173 - accuracy: 0.9721 - precision_14: 0.9735 - recall_14: 0.9708 - val_loss: 0.4866 - val_accuracy: 0.8708 - val_precision_14: 0.8708 - val_recall_14: 0.8708
Epoch 33/40
23/23 [==============================] - 5s 231ms/step - loss: 0.2320 - accuracy: 0.9680 - precision_14: 0.9693 - recall_14: 0.9680 - val_loss: 0.4169 - val_accuracy: 0.8792 - val_precision_14: 0.8828 - val_recall_14: 0.8792
Epoch 34/40
23/23 [==============================] - 6s 268ms/step - loss: 0.2139 - accuracy: 0.9666 - precision_14: 0.9719 - recall_14: 0.9652 - val_loss: 0.4137 - val_accuracy: 0.8917 - val_precision_14: 0.8954 - val_recall_14: 0.8917
Epoch 35/40
23/23 [==============================] - 6s 246ms/step - loss: 0.2019 - accuracy: 0.9763 - precision_14: 0.9777 - recall_14: 0.9749 - val_loss: 0.4068 - val_accuracy: 0.8875 - val_precision_14: 0.8912 - val_recall_14: 0.8875
Epoch 36/40
23/23 [==============================] - 5s 230ms/step - loss: 0.2189 - accuracy: 0.9610 - precision_14: 0.9636 - recall_14: 0.9582 - val_loss: 0.3855 - val_accuracy: 0.9000 - val_precision_14: 0.9038 - val_recall_14: 0.9000
Epoch 37/40
23/23 [==============================] - 6s 270ms/step - loss: 0.2159 - accuracy: 0.9652 - precision_14: 0.9665 - recall_14: 0.9652 - val_loss: 0.4205 - val_accuracy: 0.9000 - val_precision_14: 0.9000 - val_recall_14: 0.9000
Epoch 38/40
23/23 [==============================] - 5s 232ms/step - loss: 0.1949 - accuracy: 0.9721 - precision_14: 0.9762 - recall_14: 0.9721 - val_loss: 0.4439 - val_accuracy: 0.8708 - val_precision_14: 0.8745 - val_recall_14: 0.8708
Epoch 39/40
23/23 [==============================] - 6s 274ms/step - loss: 0.1853 - accuracy: 0.9805 - precision_14: 0.9805 - recall_14: 0.9791 - val_loss: 0.3833 - val_accuracy: 0.9000 - val_precision_14: 0.9038 - val_recall_14: 0.9000
Epoch 40/40
23/23 [==============================] - 5s 229ms/step - loss: 0.1851 - accuracy: 0.9763 - precision_14: 0.9790 - recall_14: 0.9749 - val_loss: 0.3296 - val_accuracy: 0.9292 - val_precision_14: 0.9325 - val_recall_14: 0.9208
In [100]:
plt.subplots_adjust(right=1.95, left=.03)

plt.subplot(1,3,1)
plt.plot(history10.history['accuracy'])
plt.plot(history10.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")

plt.subplot(1,3,2)
plt.plot(history10.history['precision_14'])
plt.plot(history10.history['val_precision_14'])
plt.ylabel('Precision')
plt.xlabel('Epoch')

plt.subplot(1,3,3)
plt.plot(history10.history['recall_14'])
plt.plot(history10.history['val_recall_14'])
plt.ylabel('Recall')
plt.xlabel('')

plt.show()
In [101]:
test_loss, test_acc, test_precision, test_recall = model10.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 1s 147ms/step - loss: 0.3786 - accuracy: 0.8958 - precision_14: 0.9025 - recall_14: 0.8875
validation_acc:  89.58
validation_loss: 0.38
validation_precision: 0.90
validation_recall: 0.89

Task 5: Using Pre-trained models and recent architectures¶

In [121]:
from tensorflow.keras.applications import ResNet50, DenseNet121
In [111]:
train_ds = datagen.flow_from_directory(
  './bears/training/',
  target_size=(224, 224),
  shuffle=True,
  batch_size=32, class_mode = 'categorical')

valid_ds = datagen.flow_from_directory(
  './bears/validation/',
  target_size=(224, 224),
  shuffle=True,
  batch_size=32, class_mode = 'categorical')

test_ds = datagen.flow_from_directory(
  './bears/test/',
  target_size=(224, 224),
  shuffle=True,
  batch_size=32, class_mode = 'categorical')
Found 718 images belonging to 3 classes.
Found 240 images belonging to 3 classes.
Found 240 images belonging to 3 classes.

ResNet50

In [112]:
resnet50 = ResNet50(weights='imagenet', include_top=False, input_shape=(224,224,3))
resnet50.summary()
Model: "resnet50"
__________________________________________________________________________________________________
 Layer (type)                   Output Shape         Param #     Connected to                     
==================================================================================================
 input_2 (InputLayer)           [(None, 224, 224, 3  0           []                               
                                )]                                                                
                                                                                                  
 conv1_pad (ZeroPadding2D)      (None, 230, 230, 3)  0           ['input_2[0][0]']                
                                                                                                  
 conv1_conv (Conv2D)            (None, 112, 112, 64  9472        ['conv1_pad[0][0]']              
                                )                                                                 
                                                                                                  
 conv1_bn (BatchNormalization)  (None, 112, 112, 64  256         ['conv1_conv[0][0]']             
                                )                                                                 
                                                                                                  
 conv1_relu (Activation)        (None, 112, 112, 64  0           ['conv1_bn[0][0]']               
                                )                                                                 
                                                                                                  
 pool1_pad (ZeroPadding2D)      (None, 114, 114, 64  0           ['conv1_relu[0][0]']             
                                )                                                                 
                                                                                                  
 pool1_pool (MaxPooling2D)      (None, 56, 56, 64)   0           ['pool1_pad[0][0]']              
                                                                                                  
 conv2_block1_1_conv (Conv2D)   (None, 56, 56, 64)   4160        ['pool1_pool[0][0]']             
                                                                                                  
 conv2_block1_1_bn (BatchNormal  (None, 56, 56, 64)  256         ['conv2_block1_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block1_1_relu (Activatio  (None, 56, 56, 64)  0           ['conv2_block1_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block1_2_conv (Conv2D)   (None, 56, 56, 64)   36928       ['conv2_block1_1_relu[0][0]']    
                                                                                                  
 conv2_block1_2_bn (BatchNormal  (None, 56, 56, 64)  256         ['conv2_block1_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block1_2_relu (Activatio  (None, 56, 56, 64)  0           ['conv2_block1_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block1_0_conv (Conv2D)   (None, 56, 56, 256)  16640       ['pool1_pool[0][0]']             
                                                                                                  
 conv2_block1_3_conv (Conv2D)   (None, 56, 56, 256)  16640       ['conv2_block1_2_relu[0][0]']    
                                                                                                  
 conv2_block1_0_bn (BatchNormal  (None, 56, 56, 256)  1024       ['conv2_block1_0_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block1_3_bn (BatchNormal  (None, 56, 56, 256)  1024       ['conv2_block1_3_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block1_add (Add)         (None, 56, 56, 256)  0           ['conv2_block1_0_bn[0][0]',      
                                                                  'conv2_block1_3_bn[0][0]']      
                                                                                                  
 conv2_block1_out (Activation)  (None, 56, 56, 256)  0           ['conv2_block1_add[0][0]']       
                                                                                                  
 conv2_block2_1_conv (Conv2D)   (None, 56, 56, 64)   16448       ['conv2_block1_out[0][0]']       
                                                                                                  
 conv2_block2_1_bn (BatchNormal  (None, 56, 56, 64)  256         ['conv2_block2_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block2_1_relu (Activatio  (None, 56, 56, 64)  0           ['conv2_block2_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block2_2_conv (Conv2D)   (None, 56, 56, 64)   36928       ['conv2_block2_1_relu[0][0]']    
                                                                                                  
 conv2_block2_2_bn (BatchNormal  (None, 56, 56, 64)  256         ['conv2_block2_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block2_2_relu (Activatio  (None, 56, 56, 64)  0           ['conv2_block2_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block2_3_conv (Conv2D)   (None, 56, 56, 256)  16640       ['conv2_block2_2_relu[0][0]']    
                                                                                                  
 conv2_block2_3_bn (BatchNormal  (None, 56, 56, 256)  1024       ['conv2_block2_3_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block2_add (Add)         (None, 56, 56, 256)  0           ['conv2_block1_out[0][0]',       
                                                                  'conv2_block2_3_bn[0][0]']      
                                                                                                  
 conv2_block2_out (Activation)  (None, 56, 56, 256)  0           ['conv2_block2_add[0][0]']       
                                                                                                  
 conv2_block3_1_conv (Conv2D)   (None, 56, 56, 64)   16448       ['conv2_block2_out[0][0]']       
                                                                                                  
 conv2_block3_1_bn (BatchNormal  (None, 56, 56, 64)  256         ['conv2_block3_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block3_1_relu (Activatio  (None, 56, 56, 64)  0           ['conv2_block3_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block3_2_conv (Conv2D)   (None, 56, 56, 64)   36928       ['conv2_block3_1_relu[0][0]']    
                                                                                                  
 conv2_block3_2_bn (BatchNormal  (None, 56, 56, 64)  256         ['conv2_block3_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block3_2_relu (Activatio  (None, 56, 56, 64)  0           ['conv2_block3_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block3_3_conv (Conv2D)   (None, 56, 56, 256)  16640       ['conv2_block3_2_relu[0][0]']    
                                                                                                  
 conv2_block3_3_bn (BatchNormal  (None, 56, 56, 256)  1024       ['conv2_block3_3_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block3_add (Add)         (None, 56, 56, 256)  0           ['conv2_block2_out[0][0]',       
                                                                  'conv2_block3_3_bn[0][0]']      
                                                                                                  
 conv2_block3_out (Activation)  (None, 56, 56, 256)  0           ['conv2_block3_add[0][0]']       
                                                                                                  
 conv3_block1_1_conv (Conv2D)   (None, 28, 28, 128)  32896       ['conv2_block3_out[0][0]']       
                                                                                                  
 conv3_block1_1_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block1_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block1_1_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block1_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block1_2_conv (Conv2D)   (None, 28, 28, 128)  147584      ['conv3_block1_1_relu[0][0]']    
                                                                                                  
 conv3_block1_2_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block1_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block1_2_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block1_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block1_0_conv (Conv2D)   (None, 28, 28, 512)  131584      ['conv2_block3_out[0][0]']       
                                                                                                  
 conv3_block1_3_conv (Conv2D)   (None, 28, 28, 512)  66048       ['conv3_block1_2_relu[0][0]']    
                                                                                                  
 conv3_block1_0_bn (BatchNormal  (None, 28, 28, 512)  2048       ['conv3_block1_0_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block1_3_bn (BatchNormal  (None, 28, 28, 512)  2048       ['conv3_block1_3_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block1_add (Add)         (None, 28, 28, 512)  0           ['conv3_block1_0_bn[0][0]',      
                                                                  'conv3_block1_3_bn[0][0]']      
                                                                                                  
 conv3_block1_out (Activation)  (None, 28, 28, 512)  0           ['conv3_block1_add[0][0]']       
                                                                                                  
 conv3_block2_1_conv (Conv2D)   (None, 28, 28, 128)  65664       ['conv3_block1_out[0][0]']       
                                                                                                  
 conv3_block2_1_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block2_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block2_1_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block2_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block2_2_conv (Conv2D)   (None, 28, 28, 128)  147584      ['conv3_block2_1_relu[0][0]']    
                                                                                                  
 conv3_block2_2_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block2_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block2_2_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block2_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block2_3_conv (Conv2D)   (None, 28, 28, 512)  66048       ['conv3_block2_2_relu[0][0]']    
                                                                                                  
 conv3_block2_3_bn (BatchNormal  (None, 28, 28, 512)  2048       ['conv3_block2_3_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block2_add (Add)         (None, 28, 28, 512)  0           ['conv3_block1_out[0][0]',       
                                                                  'conv3_block2_3_bn[0][0]']      
                                                                                                  
 conv3_block2_out (Activation)  (None, 28, 28, 512)  0           ['conv3_block2_add[0][0]']       
                                                                                                  
 conv3_block3_1_conv (Conv2D)   (None, 28, 28, 128)  65664       ['conv3_block2_out[0][0]']       
                                                                                                  
 conv3_block3_1_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block3_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block3_1_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block3_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block3_2_conv (Conv2D)   (None, 28, 28, 128)  147584      ['conv3_block3_1_relu[0][0]']    
                                                                                                  
 conv3_block3_2_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block3_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block3_2_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block3_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block3_3_conv (Conv2D)   (None, 28, 28, 512)  66048       ['conv3_block3_2_relu[0][0]']    
                                                                                                  
 conv3_block3_3_bn (BatchNormal  (None, 28, 28, 512)  2048       ['conv3_block3_3_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block3_add (Add)         (None, 28, 28, 512)  0           ['conv3_block2_out[0][0]',       
                                                                  'conv3_block3_3_bn[0][0]']      
                                                                                                  
 conv3_block3_out (Activation)  (None, 28, 28, 512)  0           ['conv3_block3_add[0][0]']       
                                                                                                  
 conv3_block4_1_conv (Conv2D)   (None, 28, 28, 128)  65664       ['conv3_block3_out[0][0]']       
                                                                                                  
 conv3_block4_1_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block4_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block4_1_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block4_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block4_2_conv (Conv2D)   (None, 28, 28, 128)  147584      ['conv3_block4_1_relu[0][0]']    
                                                                                                  
 conv3_block4_2_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block4_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block4_2_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block4_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block4_3_conv (Conv2D)   (None, 28, 28, 512)  66048       ['conv3_block4_2_relu[0][0]']    
                                                                                                  
 conv3_block4_3_bn (BatchNormal  (None, 28, 28, 512)  2048       ['conv3_block4_3_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block4_add (Add)         (None, 28, 28, 512)  0           ['conv3_block3_out[0][0]',       
                                                                  'conv3_block4_3_bn[0][0]']      
                                                                                                  
 conv3_block4_out (Activation)  (None, 28, 28, 512)  0           ['conv3_block4_add[0][0]']       
                                                                                                  
 conv4_block1_1_conv (Conv2D)   (None, 14, 14, 256)  131328      ['conv3_block4_out[0][0]']       
                                                                                                  
 conv4_block1_1_bn (BatchNormal  (None, 14, 14, 256)  1024       ['conv4_block1_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block1_1_relu (Activatio  (None, 14, 14, 256)  0          ['conv4_block1_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block1_2_conv (Conv2D)   (None, 14, 14, 256)  590080      ['conv4_block1_1_relu[0][0]']    
                                                                                                  
 conv4_block1_2_bn (BatchNormal  (None, 14, 14, 256)  1024       ['conv4_block1_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block1_2_relu (Activatio  (None, 14, 14, 256)  0          ['conv4_block1_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block1_0_conv (Conv2D)   (None, 14, 14, 1024  525312      ['conv3_block4_out[0][0]']       
                                )                                                                 
                                                                                                  
 conv4_block1_3_conv (Conv2D)   (None, 14, 14, 1024  263168      ['conv4_block1_2_relu[0][0]']    
                                )                                                                 
                                                                                                  
 conv4_block1_0_bn (BatchNormal  (None, 14, 14, 1024  4096       ['conv4_block1_0_conv[0][0]']    
 ization)                       )                                                                 
                                                                                                  
 conv4_block1_3_bn (BatchNormal  (None, 14, 14, 1024  4096       ['conv4_block1_3_conv[0][0]']    
 ization)                       )                                                                 
                                                                                                  
 conv4_block1_add (Add)         (None, 14, 14, 1024  0           ['conv4_block1_0_bn[0][0]',      
                                )                                 'conv4_block1_3_bn[0][0]']      
                                                                                                  
 conv4_block1_out (Activation)  (None, 14, 14, 1024  0           ['conv4_block1_add[0][0]']       
                                )                                                                 
                                                                                                  
 conv4_block2_1_conv (Conv2D)   (None, 14, 14, 256)  262400      ['conv4_block1_out[0][0]']       
                                                                                                  
 conv4_block2_1_bn (BatchNormal  (None, 14, 14, 256)  1024       ['conv4_block2_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block2_1_relu (Activatio  (None, 14, 14, 256)  0          ['conv4_block2_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block2_2_conv (Conv2D)   (None, 14, 14, 256)  590080      ['conv4_block2_1_relu[0][0]']    
                                                                                                  
 conv4_block2_2_bn (BatchNormal  (None, 14, 14, 256)  1024       ['conv4_block2_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block2_2_relu (Activatio  (None, 14, 14, 256)  0          ['conv4_block2_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block2_3_conv (Conv2D)   (None, 14, 14, 1024  263168      ['conv4_block2_2_relu[0][0]']    
                                )                                                                 
                                                                                                  
 conv4_block2_3_bn (BatchNormal  (None, 14, 14, 1024  4096       ['conv4_block2_3_conv[0][0]']    
 ization)                       )                                                                 
                                                                                                  
 conv4_block2_add (Add)         (None, 14, 14, 1024  0           ['conv4_block1_out[0][0]',       
                                )                                 'conv4_block2_3_bn[0][0]']      
                                                                                                  
 conv4_block2_out (Activation)  (None, 14, 14, 1024  0           ['conv4_block2_add[0][0]']       
                                )                                                                 
                                                                                                  
 conv4_block3_1_conv (Conv2D)   (None, 14, 14, 256)  262400      ['conv4_block2_out[0][0]']       
                                                                                                  
 conv4_block3_1_bn (BatchNormal  (None, 14, 14, 256)  1024       ['conv4_block3_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block3_1_relu (Activatio  (None, 14, 14, 256)  0          ['conv4_block3_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block3_2_conv (Conv2D)   (None, 14, 14, 256)  590080      ['conv4_block3_1_relu[0][0]']    
                                                                                                  
 conv4_block3_2_bn (BatchNormal  (None, 14, 14, 256)  1024       ['conv4_block3_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block3_2_relu (Activatio  (None, 14, 14, 256)  0          ['conv4_block3_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block3_3_conv (Conv2D)   (None, 14, 14, 1024  263168      ['conv4_block3_2_relu[0][0]']    
                                )                                                                 
                                                                                                  
 conv4_block3_3_bn (BatchNormal  (None, 14, 14, 1024  4096       ['conv4_block3_3_conv[0][0]']    
 ization)                       )                                                                 
                                                                                                  
 conv4_block3_add (Add)         (None, 14, 14, 1024  0           ['conv4_block2_out[0][0]',       
                                )                                 'conv4_block3_3_bn[0][0]']      
                                                                                                  
 conv4_block3_out (Activation)  (None, 14, 14, 1024  0           ['conv4_block3_add[0][0]']       
                                )                                                                 
                                                                                                  
 conv4_block4_1_conv (Conv2D)   (None, 14, 14, 256)  262400      ['conv4_block3_out[0][0]']       
                                                                                                  
 conv4_block4_1_bn (BatchNormal  (None, 14, 14, 256)  1024       ['conv4_block4_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block4_1_relu (Activatio  (None, 14, 14, 256)  0          ['conv4_block4_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block4_2_conv (Conv2D)   (None, 14, 14, 256)  590080      ['conv4_block4_1_relu[0][0]']    
                                                                                                  
 conv4_block4_2_bn (BatchNormal  (None, 14, 14, 256)  1024       ['conv4_block4_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block4_2_relu (Activatio  (None, 14, 14, 256)  0          ['conv4_block4_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block4_3_conv (Conv2D)   (None, 14, 14, 1024  263168      ['conv4_block4_2_relu[0][0]']    
                                )                                                                 
                                                                                                  
 conv4_block4_3_bn (BatchNormal  (None, 14, 14, 1024  4096       ['conv4_block4_3_conv[0][0]']    
 ization)                       )                                                                 
                                                                                                  
 conv4_block4_add (Add)         (None, 14, 14, 1024  0           ['conv4_block3_out[0][0]',       
                                )                                 'conv4_block4_3_bn[0][0]']      
                                                                                                  
 conv4_block4_out (Activation)  (None, 14, 14, 1024  0           ['conv4_block4_add[0][0]']       
                                )                                                                 
                                                                                                  
 conv4_block5_1_conv (Conv2D)   (None, 14, 14, 256)  262400      ['conv4_block4_out[0][0]']       
                                                                                                  
 conv4_block5_1_bn (BatchNormal  (None, 14, 14, 256)  1024       ['conv4_block5_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block5_1_relu (Activatio  (None, 14, 14, 256)  0          ['conv4_block5_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block5_2_conv (Conv2D)   (None, 14, 14, 256)  590080      ['conv4_block5_1_relu[0][0]']    
                                                                                                  
 conv4_block5_2_bn (BatchNormal  (None, 14, 14, 256)  1024       ['conv4_block5_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block5_2_relu (Activatio  (None, 14, 14, 256)  0          ['conv4_block5_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block5_3_conv (Conv2D)   (None, 14, 14, 1024  263168      ['conv4_block5_2_relu[0][0]']    
                                )                                                                 
                                                                                                  
 conv4_block5_3_bn (BatchNormal  (None, 14, 14, 1024  4096       ['conv4_block5_3_conv[0][0]']    
 ization)                       )                                                                 
                                                                                                  
 conv4_block5_add (Add)         (None, 14, 14, 1024  0           ['conv4_block4_out[0][0]',       
                                )                                 'conv4_block5_3_bn[0][0]']      
                                                                                                  
 conv4_block5_out (Activation)  (None, 14, 14, 1024  0           ['conv4_block5_add[0][0]']       
                                )                                                                 
                                                                                                  
 conv4_block6_1_conv (Conv2D)   (None, 14, 14, 256)  262400      ['conv4_block5_out[0][0]']       
                                                                                                  
 conv4_block6_1_bn (BatchNormal  (None, 14, 14, 256)  1024       ['conv4_block6_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block6_1_relu (Activatio  (None, 14, 14, 256)  0          ['conv4_block6_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block6_2_conv (Conv2D)   (None, 14, 14, 256)  590080      ['conv4_block6_1_relu[0][0]']    
                                                                                                  
 conv4_block6_2_bn (BatchNormal  (None, 14, 14, 256)  1024       ['conv4_block6_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block6_2_relu (Activatio  (None, 14, 14, 256)  0          ['conv4_block6_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block6_3_conv (Conv2D)   (None, 14, 14, 1024  263168      ['conv4_block6_2_relu[0][0]']    
                                )                                                                 
                                                                                                  
 conv4_block6_3_bn (BatchNormal  (None, 14, 14, 1024  4096       ['conv4_block6_3_conv[0][0]']    
 ization)                       )                                                                 
                                                                                                  
 conv4_block6_add (Add)         (None, 14, 14, 1024  0           ['conv4_block5_out[0][0]',       
                                )                                 'conv4_block6_3_bn[0][0]']      
                                                                                                  
 conv4_block6_out (Activation)  (None, 14, 14, 1024  0           ['conv4_block6_add[0][0]']       
                                )                                                                 
                                                                                                  
 conv5_block1_1_conv (Conv2D)   (None, 7, 7, 512)    524800      ['conv4_block6_out[0][0]']       
                                                                                                  
 conv5_block1_1_bn (BatchNormal  (None, 7, 7, 512)   2048        ['conv5_block1_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block1_1_relu (Activatio  (None, 7, 7, 512)   0           ['conv5_block1_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block1_2_conv (Conv2D)   (None, 7, 7, 512)    2359808     ['conv5_block1_1_relu[0][0]']    
                                                                                                  
 conv5_block1_2_bn (BatchNormal  (None, 7, 7, 512)   2048        ['conv5_block1_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block1_2_relu (Activatio  (None, 7, 7, 512)   0           ['conv5_block1_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block1_0_conv (Conv2D)   (None, 7, 7, 2048)   2099200     ['conv4_block6_out[0][0]']       
                                                                                                  
 conv5_block1_3_conv (Conv2D)   (None, 7, 7, 2048)   1050624     ['conv5_block1_2_relu[0][0]']    
                                                                                                  
 conv5_block1_0_bn (BatchNormal  (None, 7, 7, 2048)  8192        ['conv5_block1_0_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block1_3_bn (BatchNormal  (None, 7, 7, 2048)  8192        ['conv5_block1_3_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block1_add (Add)         (None, 7, 7, 2048)   0           ['conv5_block1_0_bn[0][0]',      
                                                                  'conv5_block1_3_bn[0][0]']      
                                                                                                  
 conv5_block1_out (Activation)  (None, 7, 7, 2048)   0           ['conv5_block1_add[0][0]']       
                                                                                                  
 conv5_block2_1_conv (Conv2D)   (None, 7, 7, 512)    1049088     ['conv5_block1_out[0][0]']       
                                                                                                  
 conv5_block2_1_bn (BatchNormal  (None, 7, 7, 512)   2048        ['conv5_block2_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block2_1_relu (Activatio  (None, 7, 7, 512)   0           ['conv5_block2_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block2_2_conv (Conv2D)   (None, 7, 7, 512)    2359808     ['conv5_block2_1_relu[0][0]']    
                                                                                                  
 conv5_block2_2_bn (BatchNormal  (None, 7, 7, 512)   2048        ['conv5_block2_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block2_2_relu (Activatio  (None, 7, 7, 512)   0           ['conv5_block2_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block2_3_conv (Conv2D)   (None, 7, 7, 2048)   1050624     ['conv5_block2_2_relu[0][0]']    
                                                                                                  
 conv5_block2_3_bn (BatchNormal  (None, 7, 7, 2048)  8192        ['conv5_block2_3_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block2_add (Add)         (None, 7, 7, 2048)   0           ['conv5_block1_out[0][0]',       
                                                                  'conv5_block2_3_bn[0][0]']      
                                                                                                  
 conv5_block2_out (Activation)  (None, 7, 7, 2048)   0           ['conv5_block2_add[0][0]']       
                                                                                                  
 conv5_block3_1_conv (Conv2D)   (None, 7, 7, 512)    1049088     ['conv5_block2_out[0][0]']       
                                                                                                  
 conv5_block3_1_bn (BatchNormal  (None, 7, 7, 512)   2048        ['conv5_block3_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block3_1_relu (Activatio  (None, 7, 7, 512)   0           ['conv5_block3_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block3_2_conv (Conv2D)   (None, 7, 7, 512)    2359808     ['conv5_block3_1_relu[0][0]']    
                                                                                                  
 conv5_block3_2_bn (BatchNormal  (None, 7, 7, 512)   2048        ['conv5_block3_2_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block3_2_relu (Activatio  (None, 7, 7, 512)   0           ['conv5_block3_2_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block3_3_conv (Conv2D)   (None, 7, 7, 2048)   1050624     ['conv5_block3_2_relu[0][0]']    
                                                                                                  
 conv5_block3_3_bn (BatchNormal  (None, 7, 7, 2048)  8192        ['conv5_block3_3_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block3_add (Add)         (None, 7, 7, 2048)   0           ['conv5_block2_out[0][0]',       
                                                                  'conv5_block3_3_bn[0][0]']      
                                                                                                  
 conv5_block3_out (Activation)  (None, 7, 7, 2048)   0           ['conv5_block3_add[0][0]']       
                                                                                                  
==================================================================================================
Total params: 23,587,712
Trainable params: 23,534,592
Non-trainable params: 53,120
__________________________________________________________________________________________________
In [113]:
modelResnet50 = Sequential()
modelResnet50.add(resnet)
modelResnet50.add( Flatten())
modelResnet50.add( Dense(units=32, activation = 'relu' , input_dim = 7 * 7 * 2048))
modelResnet50.add( Dense(units=3, activation = 'softmax' ) )
modelResnet50.summary()
Model: "sequential_22"
_________________________________________________________________
 Layer (type)                Output Shape              Param #   
=================================================================
 resnet50 (Functional)       (None, 7, 7, 2048)        23587712  
                                                                 
 flatten_18 (Flatten)        (None, 100352)            0         
                                                                 
 dense_36 (Dense)            (None, 32)                3211296   
                                                                 
 dense_37 (Dense)            (None, 3)                 99        
                                                                 
=================================================================
Total params: 26,799,107
Trainable params: 26,745,987
Non-trainable params: 53,120
_________________________________________________________________
In [115]:
modelResnet50.compile( optimizer = 'rmsprop', loss = 'categorical_crossentropy', metrics = [ 'accuracy', Precision(), Recall()] )
historyResnet50 = modelResnet50.fit( train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40
23/23 [==============================] - 41s 621ms/step - loss: 5.8635 - accuracy: 0.6421 - precision_19: 0.7596 - recall_19: 0.4401 - val_loss: 1.0985 - val_accuracy: 0.3583 - val_precision_19: 0.0000e+00 - val_recall_19: 0.0000e+00
Epoch 2/40
23/23 [==============================] - 10s 445ms/step - loss: 0.5606 - accuracy: 0.7953 - precision_19: 0.8677 - recall_19: 0.7493 - val_loss: 1.0989 - val_accuracy: 0.3083 - val_precision_19: 0.0000e+00 - val_recall_19: 0.0000e+00
Epoch 3/40
23/23 [==============================] - 10s 442ms/step - loss: 1.0685 - accuracy: 0.8106 - precision_19: 0.8512 - recall_19: 0.7730 - val_loss: 3293.8306 - val_accuracy: 0.3333 - val_precision_19: 0.3333 - val_recall_19: 0.3333
Epoch 4/40
23/23 [==============================] - 10s 445ms/step - loss: 0.7759 - accuracy: 0.8802 - precision_19: 0.8957 - recall_19: 0.8607 - val_loss: 1.4093 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
Epoch 5/40
23/23 [==============================] - 12s 503ms/step - loss: 0.7931 - accuracy: 0.8788 - precision_19: 0.8947 - recall_19: 0.8635 - val_loss: 1289.1473 - val_accuracy: 0.3333 - val_precision_19: 0.3333 - val_recall_19: 0.3333
Epoch 6/40
23/23 [==============================] - 11s 455ms/step - loss: 0.1628 - accuracy: 0.9415 - precision_19: 0.9520 - recall_19: 0.9387 - val_loss: 3.1296 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
Epoch 7/40
23/23 [==============================] - 10s 441ms/step - loss: 0.2387 - accuracy: 0.9429 - precision_19: 0.9452 - recall_19: 0.9373 - val_loss: 2.8906 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
Epoch 8/40
23/23 [==============================] - 10s 438ms/step - loss: 0.0656 - accuracy: 0.9805 - precision_19: 0.9818 - recall_19: 0.9791 - val_loss: 4.2361 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
Epoch 9/40
23/23 [==============================] - 10s 447ms/step - loss: 0.8262 - accuracy: 0.8942 - precision_19: 0.8999 - recall_19: 0.8886 - val_loss: 9.8643 - val_accuracy: 0.3333 - val_precision_19: 0.3333 - val_recall_19: 0.3333
Epoch 10/40
23/23 [==============================] - 10s 448ms/step - loss: 0.4248 - accuracy: 0.9081 - precision_19: 0.9220 - recall_19: 0.9053 - val_loss: 325.9099 - val_accuracy: 0.3333 - val_precision_19: 0.3333 - val_recall_19: 0.3333
Epoch 11/40
23/23 [==============================] - 10s 429ms/step - loss: 0.0848 - accuracy: 0.9805 - precision_19: 0.9805 - recall_19: 0.9791 - val_loss: 2.0679 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
Epoch 12/40
23/23 [==============================] - 11s 467ms/step - loss: 0.2379 - accuracy: 0.9443 - precision_19: 0.9533 - recall_19: 0.9387 - val_loss: 16.2153 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
Epoch 13/40
23/23 [==============================] - 10s 441ms/step - loss: 0.0443 - accuracy: 0.9861 - precision_19: 0.9861 - recall_19: 0.9847 - val_loss: 1.7106 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
Epoch 14/40
23/23 [==============================] - 10s 442ms/step - loss: 0.1389 - accuracy: 0.9763 - precision_19: 0.9763 - recall_19: 0.9749 - val_loss: 2.6960 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
Epoch 15/40
23/23 [==============================] - 13s 582ms/step - loss: 0.1569 - accuracy: 0.9610 - precision_19: 0.9623 - recall_19: 0.9596 - val_loss: 2.1198 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
Epoch 16/40
23/23 [==============================] - 11s 459ms/step - loss: 0.0786 - accuracy: 0.9680 - precision_19: 0.9719 - recall_19: 0.9652 - val_loss: 1.3643 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
Epoch 17/40
23/23 [==============================] - 10s 435ms/step - loss: 0.0825 - accuracy: 0.9819 - precision_19: 0.9832 - recall_19: 0.9791 - val_loss: 1.4853 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
Epoch 18/40
23/23 [==============================] - 11s 482ms/step - loss: 0.1159 - accuracy: 0.9735 - precision_19: 0.9735 - recall_19: 0.9735 - val_loss: 1.5969 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
Epoch 19/40
23/23 [==============================] - 11s 458ms/step - loss: 0.0024 - accuracy: 1.0000 - precision_19: 1.0000 - recall_19: 1.0000 - val_loss: 1.5492 - val_accuracy: 0.3083 - val_precision_19: 0.3083 - val_recall_19: 0.3083
In [116]:
plt.subplots_adjust(right=1.95, left=.03)

plt.subplot(1,3,1)
plt.plot(historyResnet50.history['accuracy'])
plt.plot(historyResnet50.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")

plt.subplot(1,3,2)
plt.plot(historyResnet50.history['precision_19'])
plt.plot(historyResnet50.history['val_precision_19'])
plt.ylabel('Precision')
plt.xlabel('Epoch')

plt.subplot(1,3,3)
plt.plot(historyResnet50.history['recall_19'])
plt.plot(historyResnet50.history['val_recall_19'])
plt.ylabel('Recall')
plt.xlabel('')


plt.show()
In [118]:
test_loss, test_acc, test_precision, test_recall = modelResnet50.evaluate(test_ds)

print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 2s 191ms/step - loss: 1.4777 - accuracy: 0.3542 - precision_19: 0.3542 - recall_19: 0.3542
validation_acc:  35.42
validation_loss: 1.48
validation_precision: 0.35
validation_recall: 0.35

DenseNet

In [122]:
denseNet = DenseNet121(weights='imagenet', include_top=False, input_shape=(224,224,3))
denseNet.summary()
Downloading data from https://storage.googleapis.com/tensorflow/keras-applications/densenet/densenet121_weights_tf_dim_ordering_tf_kernels_notop.h5
29084464/29084464 [==============================] - 1s 0us/step
Model: "densenet121"
__________________________________________________________________________________________________
 Layer (type)                   Output Shape         Param #     Connected to                     
==================================================================================================
 input_3 (InputLayer)           [(None, 224, 224, 3  0           []                               
                                )]                                                                
                                                                                                  
 zero_padding2d (ZeroPadding2D)  (None, 230, 230, 3)  0          ['input_3[0][0]']                
                                                                                                  
 conv1/conv (Conv2D)            (None, 112, 112, 64  9408        ['zero_padding2d[0][0]']         
                                )                                                                 
                                                                                                  
 conv1/bn (BatchNormalization)  (None, 112, 112, 64  256         ['conv1/conv[0][0]']             
                                )                                                                 
                                                                                                  
 conv1/relu (Activation)        (None, 112, 112, 64  0           ['conv1/bn[0][0]']               
                                )                                                                 
                                                                                                  
 zero_padding2d_1 (ZeroPadding2  (None, 114, 114, 64  0          ['conv1/relu[0][0]']             
 D)                             )                                                                 
                                                                                                  
 pool1 (MaxPooling2D)           (None, 56, 56, 64)   0           ['zero_padding2d_1[0][0]']       
                                                                                                  
 conv2_block1_0_bn (BatchNormal  (None, 56, 56, 64)  256         ['pool1[0][0]']                  
 ization)                                                                                         
                                                                                                  
 conv2_block1_0_relu (Activatio  (None, 56, 56, 64)  0           ['conv2_block1_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block1_1_conv (Conv2D)   (None, 56, 56, 128)  8192        ['conv2_block1_0_relu[0][0]']    
                                                                                                  
 conv2_block1_1_bn (BatchNormal  (None, 56, 56, 128)  512        ['conv2_block1_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block1_1_relu (Activatio  (None, 56, 56, 128)  0          ['conv2_block1_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block1_2_conv (Conv2D)   (None, 56, 56, 32)   36864       ['conv2_block1_1_relu[0][0]']    
                                                                                                  
 conv2_block1_concat (Concatena  (None, 56, 56, 96)  0           ['pool1[0][0]',                  
 te)                                                              'conv2_block1_2_conv[0][0]']    
                                                                                                  
 conv2_block2_0_bn (BatchNormal  (None, 56, 56, 96)  384         ['conv2_block1_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block2_0_relu (Activatio  (None, 56, 56, 96)  0           ['conv2_block2_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block2_1_conv (Conv2D)   (None, 56, 56, 128)  12288       ['conv2_block2_0_relu[0][0]']    
                                                                                                  
 conv2_block2_1_bn (BatchNormal  (None, 56, 56, 128)  512        ['conv2_block2_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block2_1_relu (Activatio  (None, 56, 56, 128)  0          ['conv2_block2_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block2_2_conv (Conv2D)   (None, 56, 56, 32)   36864       ['conv2_block2_1_relu[0][0]']    
                                                                                                  
 conv2_block2_concat (Concatena  (None, 56, 56, 128)  0          ['conv2_block1_concat[0][0]',    
 te)                                                              'conv2_block2_2_conv[0][0]']    
                                                                                                  
 conv2_block3_0_bn (BatchNormal  (None, 56, 56, 128)  512        ['conv2_block2_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block3_0_relu (Activatio  (None, 56, 56, 128)  0          ['conv2_block3_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block3_1_conv (Conv2D)   (None, 56, 56, 128)  16384       ['conv2_block3_0_relu[0][0]']    
                                                                                                  
 conv2_block3_1_bn (BatchNormal  (None, 56, 56, 128)  512        ['conv2_block3_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block3_1_relu (Activatio  (None, 56, 56, 128)  0          ['conv2_block3_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block3_2_conv (Conv2D)   (None, 56, 56, 32)   36864       ['conv2_block3_1_relu[0][0]']    
                                                                                                  
 conv2_block3_concat (Concatena  (None, 56, 56, 160)  0          ['conv2_block2_concat[0][0]',    
 te)                                                              'conv2_block3_2_conv[0][0]']    
                                                                                                  
 conv2_block4_0_bn (BatchNormal  (None, 56, 56, 160)  640        ['conv2_block3_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block4_0_relu (Activatio  (None, 56, 56, 160)  0          ['conv2_block4_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block4_1_conv (Conv2D)   (None, 56, 56, 128)  20480       ['conv2_block4_0_relu[0][0]']    
                                                                                                  
 conv2_block4_1_bn (BatchNormal  (None, 56, 56, 128)  512        ['conv2_block4_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block4_1_relu (Activatio  (None, 56, 56, 128)  0          ['conv2_block4_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block4_2_conv (Conv2D)   (None, 56, 56, 32)   36864       ['conv2_block4_1_relu[0][0]']    
                                                                                                  
 conv2_block4_concat (Concatena  (None, 56, 56, 192)  0          ['conv2_block3_concat[0][0]',    
 te)                                                              'conv2_block4_2_conv[0][0]']    
                                                                                                  
 conv2_block5_0_bn (BatchNormal  (None, 56, 56, 192)  768        ['conv2_block4_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block5_0_relu (Activatio  (None, 56, 56, 192)  0          ['conv2_block5_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block5_1_conv (Conv2D)   (None, 56, 56, 128)  24576       ['conv2_block5_0_relu[0][0]']    
                                                                                                  
 conv2_block5_1_bn (BatchNormal  (None, 56, 56, 128)  512        ['conv2_block5_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block5_1_relu (Activatio  (None, 56, 56, 128)  0          ['conv2_block5_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block5_2_conv (Conv2D)   (None, 56, 56, 32)   36864       ['conv2_block5_1_relu[0][0]']    
                                                                                                  
 conv2_block5_concat (Concatena  (None, 56, 56, 224)  0          ['conv2_block4_concat[0][0]',    
 te)                                                              'conv2_block5_2_conv[0][0]']    
                                                                                                  
 conv2_block6_0_bn (BatchNormal  (None, 56, 56, 224)  896        ['conv2_block5_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block6_0_relu (Activatio  (None, 56, 56, 224)  0          ['conv2_block6_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block6_1_conv (Conv2D)   (None, 56, 56, 128)  28672       ['conv2_block6_0_relu[0][0]']    
                                                                                                  
 conv2_block6_1_bn (BatchNormal  (None, 56, 56, 128)  512        ['conv2_block6_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv2_block6_1_relu (Activatio  (None, 56, 56, 128)  0          ['conv2_block6_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv2_block6_2_conv (Conv2D)   (None, 56, 56, 32)   36864       ['conv2_block6_1_relu[0][0]']    
                                                                                                  
 conv2_block6_concat (Concatena  (None, 56, 56, 256)  0          ['conv2_block5_concat[0][0]',    
 te)                                                              'conv2_block6_2_conv[0][0]']    
                                                                                                  
 pool2_bn (BatchNormalization)  (None, 56, 56, 256)  1024        ['conv2_block6_concat[0][0]']    
                                                                                                  
 pool2_relu (Activation)        (None, 56, 56, 256)  0           ['pool2_bn[0][0]']               
                                                                                                  
 pool2_conv (Conv2D)            (None, 56, 56, 128)  32768       ['pool2_relu[0][0]']             
                                                                                                  
 pool2_pool (AveragePooling2D)  (None, 28, 28, 128)  0           ['pool2_conv[0][0]']             
                                                                                                  
 conv3_block1_0_bn (BatchNormal  (None, 28, 28, 128)  512        ['pool2_pool[0][0]']             
 ization)                                                                                         
                                                                                                  
 conv3_block1_0_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block1_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block1_1_conv (Conv2D)   (None, 28, 28, 128)  16384       ['conv3_block1_0_relu[0][0]']    
                                                                                                  
 conv3_block1_1_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block1_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block1_1_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block1_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block1_2_conv (Conv2D)   (None, 28, 28, 32)   36864       ['conv3_block1_1_relu[0][0]']    
                                                                                                  
 conv3_block1_concat (Concatena  (None, 28, 28, 160)  0          ['pool2_pool[0][0]',             
 te)                                                              'conv3_block1_2_conv[0][0]']    
                                                                                                  
 conv3_block2_0_bn (BatchNormal  (None, 28, 28, 160)  640        ['conv3_block1_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block2_0_relu (Activatio  (None, 28, 28, 160)  0          ['conv3_block2_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block2_1_conv (Conv2D)   (None, 28, 28, 128)  20480       ['conv3_block2_0_relu[0][0]']    
                                                                                                  
 conv3_block2_1_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block2_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block2_1_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block2_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block2_2_conv (Conv2D)   (None, 28, 28, 32)   36864       ['conv3_block2_1_relu[0][0]']    
                                                                                                  
 conv3_block2_concat (Concatena  (None, 28, 28, 192)  0          ['conv3_block1_concat[0][0]',    
 te)                                                              'conv3_block2_2_conv[0][0]']    
                                                                                                  
 conv3_block3_0_bn (BatchNormal  (None, 28, 28, 192)  768        ['conv3_block2_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block3_0_relu (Activatio  (None, 28, 28, 192)  0          ['conv3_block3_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block3_1_conv (Conv2D)   (None, 28, 28, 128)  24576       ['conv3_block3_0_relu[0][0]']    
                                                                                                  
 conv3_block3_1_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block3_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block3_1_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block3_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block3_2_conv (Conv2D)   (None, 28, 28, 32)   36864       ['conv3_block3_1_relu[0][0]']    
                                                                                                  
 conv3_block3_concat (Concatena  (None, 28, 28, 224)  0          ['conv3_block2_concat[0][0]',    
 te)                                                              'conv3_block3_2_conv[0][0]']    
                                                                                                  
 conv3_block4_0_bn (BatchNormal  (None, 28, 28, 224)  896        ['conv3_block3_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block4_0_relu (Activatio  (None, 28, 28, 224)  0          ['conv3_block4_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block4_1_conv (Conv2D)   (None, 28, 28, 128)  28672       ['conv3_block4_0_relu[0][0]']    
                                                                                                  
 conv3_block4_1_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block4_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block4_1_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block4_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block4_2_conv (Conv2D)   (None, 28, 28, 32)   36864       ['conv3_block4_1_relu[0][0]']    
                                                                                                  
 conv3_block4_concat (Concatena  (None, 28, 28, 256)  0          ['conv3_block3_concat[0][0]',    
 te)                                                              'conv3_block4_2_conv[0][0]']    
                                                                                                  
 conv3_block5_0_bn (BatchNormal  (None, 28, 28, 256)  1024       ['conv3_block4_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block5_0_relu (Activatio  (None, 28, 28, 256)  0          ['conv3_block5_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block5_1_conv (Conv2D)   (None, 28, 28, 128)  32768       ['conv3_block5_0_relu[0][0]']    
                                                                                                  
 conv3_block5_1_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block5_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block5_1_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block5_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block5_2_conv (Conv2D)   (None, 28, 28, 32)   36864       ['conv3_block5_1_relu[0][0]']    
                                                                                                  
 conv3_block5_concat (Concatena  (None, 28, 28, 288)  0          ['conv3_block4_concat[0][0]',    
 te)                                                              'conv3_block5_2_conv[0][0]']    
                                                                                                  
 conv3_block6_0_bn (BatchNormal  (None, 28, 28, 288)  1152       ['conv3_block5_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block6_0_relu (Activatio  (None, 28, 28, 288)  0          ['conv3_block6_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block6_1_conv (Conv2D)   (None, 28, 28, 128)  36864       ['conv3_block6_0_relu[0][0]']    
                                                                                                  
 conv3_block6_1_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block6_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block6_1_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block6_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block6_2_conv (Conv2D)   (None, 28, 28, 32)   36864       ['conv3_block6_1_relu[0][0]']    
                                                                                                  
 conv3_block6_concat (Concatena  (None, 28, 28, 320)  0          ['conv3_block5_concat[0][0]',    
 te)                                                              'conv3_block6_2_conv[0][0]']    
                                                                                                  
 conv3_block7_0_bn (BatchNormal  (None, 28, 28, 320)  1280       ['conv3_block6_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block7_0_relu (Activatio  (None, 28, 28, 320)  0          ['conv3_block7_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block7_1_conv (Conv2D)   (None, 28, 28, 128)  40960       ['conv3_block7_0_relu[0][0]']    
                                                                                                  
 conv3_block7_1_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block7_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block7_1_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block7_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block7_2_conv (Conv2D)   (None, 28, 28, 32)   36864       ['conv3_block7_1_relu[0][0]']    
                                                                                                  
 conv3_block7_concat (Concatena  (None, 28, 28, 352)  0          ['conv3_block6_concat[0][0]',    
 te)                                                              'conv3_block7_2_conv[0][0]']    
                                                                                                  
 conv3_block8_0_bn (BatchNormal  (None, 28, 28, 352)  1408       ['conv3_block7_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block8_0_relu (Activatio  (None, 28, 28, 352)  0          ['conv3_block8_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block8_1_conv (Conv2D)   (None, 28, 28, 128)  45056       ['conv3_block8_0_relu[0][0]']    
                                                                                                  
 conv3_block8_1_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block8_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block8_1_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block8_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block8_2_conv (Conv2D)   (None, 28, 28, 32)   36864       ['conv3_block8_1_relu[0][0]']    
                                                                                                  
 conv3_block8_concat (Concatena  (None, 28, 28, 384)  0          ['conv3_block7_concat[0][0]',    
 te)                                                              'conv3_block8_2_conv[0][0]']    
                                                                                                  
 conv3_block9_0_bn (BatchNormal  (None, 28, 28, 384)  1536       ['conv3_block8_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block9_0_relu (Activatio  (None, 28, 28, 384)  0          ['conv3_block9_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block9_1_conv (Conv2D)   (None, 28, 28, 128)  49152       ['conv3_block9_0_relu[0][0]']    
                                                                                                  
 conv3_block9_1_bn (BatchNormal  (None, 28, 28, 128)  512        ['conv3_block9_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv3_block9_1_relu (Activatio  (None, 28, 28, 128)  0          ['conv3_block9_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv3_block9_2_conv (Conv2D)   (None, 28, 28, 32)   36864       ['conv3_block9_1_relu[0][0]']    
                                                                                                  
 conv3_block9_concat (Concatena  (None, 28, 28, 416)  0          ['conv3_block8_concat[0][0]',    
 te)                                                              'conv3_block9_2_conv[0][0]']    
                                                                                                  
 conv3_block10_0_bn (BatchNorma  (None, 28, 28, 416)  1664       ['conv3_block9_concat[0][0]']    
 lization)                                                                                        
                                                                                                  
 conv3_block10_0_relu (Activati  (None, 28, 28, 416)  0          ['conv3_block10_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv3_block10_1_conv (Conv2D)  (None, 28, 28, 128)  53248       ['conv3_block10_0_relu[0][0]']   
                                                                                                  
 conv3_block10_1_bn (BatchNorma  (None, 28, 28, 128)  512        ['conv3_block10_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv3_block10_1_relu (Activati  (None, 28, 28, 128)  0          ['conv3_block10_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv3_block10_2_conv (Conv2D)  (None, 28, 28, 32)   36864       ['conv3_block10_1_relu[0][0]']   
                                                                                                  
 conv3_block10_concat (Concaten  (None, 28, 28, 448)  0          ['conv3_block9_concat[0][0]',    
 ate)                                                             'conv3_block10_2_conv[0][0]']   
                                                                                                  
 conv3_block11_0_bn (BatchNorma  (None, 28, 28, 448)  1792       ['conv3_block10_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv3_block11_0_relu (Activati  (None, 28, 28, 448)  0          ['conv3_block11_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv3_block11_1_conv (Conv2D)  (None, 28, 28, 128)  57344       ['conv3_block11_0_relu[0][0]']   
                                                                                                  
 conv3_block11_1_bn (BatchNorma  (None, 28, 28, 128)  512        ['conv3_block11_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv3_block11_1_relu (Activati  (None, 28, 28, 128)  0          ['conv3_block11_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv3_block11_2_conv (Conv2D)  (None, 28, 28, 32)   36864       ['conv3_block11_1_relu[0][0]']   
                                                                                                  
 conv3_block11_concat (Concaten  (None, 28, 28, 480)  0          ['conv3_block10_concat[0][0]',   
 ate)                                                             'conv3_block11_2_conv[0][0]']   
                                                                                                  
 conv3_block12_0_bn (BatchNorma  (None, 28, 28, 480)  1920       ['conv3_block11_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv3_block12_0_relu (Activati  (None, 28, 28, 480)  0          ['conv3_block12_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv3_block12_1_conv (Conv2D)  (None, 28, 28, 128)  61440       ['conv3_block12_0_relu[0][0]']   
                                                                                                  
 conv3_block12_1_bn (BatchNorma  (None, 28, 28, 128)  512        ['conv3_block12_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv3_block12_1_relu (Activati  (None, 28, 28, 128)  0          ['conv3_block12_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv3_block12_2_conv (Conv2D)  (None, 28, 28, 32)   36864       ['conv3_block12_1_relu[0][0]']   
                                                                                                  
 conv3_block12_concat (Concaten  (None, 28, 28, 512)  0          ['conv3_block11_concat[0][0]',   
 ate)                                                             'conv3_block12_2_conv[0][0]']   
                                                                                                  
 pool3_bn (BatchNormalization)  (None, 28, 28, 512)  2048        ['conv3_block12_concat[0][0]']   
                                                                                                  
 pool3_relu (Activation)        (None, 28, 28, 512)  0           ['pool3_bn[0][0]']               
                                                                                                  
 pool3_conv (Conv2D)            (None, 28, 28, 256)  131072      ['pool3_relu[0][0]']             
                                                                                                  
 pool3_pool (AveragePooling2D)  (None, 14, 14, 256)  0           ['pool3_conv[0][0]']             
                                                                                                  
 conv4_block1_0_bn (BatchNormal  (None, 14, 14, 256)  1024       ['pool3_pool[0][0]']             
 ization)                                                                                         
                                                                                                  
 conv4_block1_0_relu (Activatio  (None, 14, 14, 256)  0          ['conv4_block1_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block1_1_conv (Conv2D)   (None, 14, 14, 128)  32768       ['conv4_block1_0_relu[0][0]']    
                                                                                                  
 conv4_block1_1_bn (BatchNormal  (None, 14, 14, 128)  512        ['conv4_block1_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block1_1_relu (Activatio  (None, 14, 14, 128)  0          ['conv4_block1_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block1_2_conv (Conv2D)   (None, 14, 14, 32)   36864       ['conv4_block1_1_relu[0][0]']    
                                                                                                  
 conv4_block1_concat (Concatena  (None, 14, 14, 288)  0          ['pool3_pool[0][0]',             
 te)                                                              'conv4_block1_2_conv[0][0]']    
                                                                                                  
 conv4_block2_0_bn (BatchNormal  (None, 14, 14, 288)  1152       ['conv4_block1_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block2_0_relu (Activatio  (None, 14, 14, 288)  0          ['conv4_block2_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block2_1_conv (Conv2D)   (None, 14, 14, 128)  36864       ['conv4_block2_0_relu[0][0]']    
                                                                                                  
 conv4_block2_1_bn (BatchNormal  (None, 14, 14, 128)  512        ['conv4_block2_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block2_1_relu (Activatio  (None, 14, 14, 128)  0          ['conv4_block2_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block2_2_conv (Conv2D)   (None, 14, 14, 32)   36864       ['conv4_block2_1_relu[0][0]']    
                                                                                                  
 conv4_block2_concat (Concatena  (None, 14, 14, 320)  0          ['conv4_block1_concat[0][0]',    
 te)                                                              'conv4_block2_2_conv[0][0]']    
                                                                                                  
 conv4_block3_0_bn (BatchNormal  (None, 14, 14, 320)  1280       ['conv4_block2_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block3_0_relu (Activatio  (None, 14, 14, 320)  0          ['conv4_block3_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block3_1_conv (Conv2D)   (None, 14, 14, 128)  40960       ['conv4_block3_0_relu[0][0]']    
                                                                                                  
 conv4_block3_1_bn (BatchNormal  (None, 14, 14, 128)  512        ['conv4_block3_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block3_1_relu (Activatio  (None, 14, 14, 128)  0          ['conv4_block3_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block3_2_conv (Conv2D)   (None, 14, 14, 32)   36864       ['conv4_block3_1_relu[0][0]']    
                                                                                                  
 conv4_block3_concat (Concatena  (None, 14, 14, 352)  0          ['conv4_block2_concat[0][0]',    
 te)                                                              'conv4_block3_2_conv[0][0]']    
                                                                                                  
 conv4_block4_0_bn (BatchNormal  (None, 14, 14, 352)  1408       ['conv4_block3_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block4_0_relu (Activatio  (None, 14, 14, 352)  0          ['conv4_block4_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block4_1_conv (Conv2D)   (None, 14, 14, 128)  45056       ['conv4_block4_0_relu[0][0]']    
                                                                                                  
 conv4_block4_1_bn (BatchNormal  (None, 14, 14, 128)  512        ['conv4_block4_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block4_1_relu (Activatio  (None, 14, 14, 128)  0          ['conv4_block4_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block4_2_conv (Conv2D)   (None, 14, 14, 32)   36864       ['conv4_block4_1_relu[0][0]']    
                                                                                                  
 conv4_block4_concat (Concatena  (None, 14, 14, 384)  0          ['conv4_block3_concat[0][0]',    
 te)                                                              'conv4_block4_2_conv[0][0]']    
                                                                                                  
 conv4_block5_0_bn (BatchNormal  (None, 14, 14, 384)  1536       ['conv4_block4_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block5_0_relu (Activatio  (None, 14, 14, 384)  0          ['conv4_block5_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block5_1_conv (Conv2D)   (None, 14, 14, 128)  49152       ['conv4_block5_0_relu[0][0]']    
                                                                                                  
 conv4_block5_1_bn (BatchNormal  (None, 14, 14, 128)  512        ['conv4_block5_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block5_1_relu (Activatio  (None, 14, 14, 128)  0          ['conv4_block5_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block5_2_conv (Conv2D)   (None, 14, 14, 32)   36864       ['conv4_block5_1_relu[0][0]']    
                                                                                                  
 conv4_block5_concat (Concatena  (None, 14, 14, 416)  0          ['conv4_block4_concat[0][0]',    
 te)                                                              'conv4_block5_2_conv[0][0]']    
                                                                                                  
 conv4_block6_0_bn (BatchNormal  (None, 14, 14, 416)  1664       ['conv4_block5_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block6_0_relu (Activatio  (None, 14, 14, 416)  0          ['conv4_block6_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block6_1_conv (Conv2D)   (None, 14, 14, 128)  53248       ['conv4_block6_0_relu[0][0]']    
                                                                                                  
 conv4_block6_1_bn (BatchNormal  (None, 14, 14, 128)  512        ['conv4_block6_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block6_1_relu (Activatio  (None, 14, 14, 128)  0          ['conv4_block6_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block6_2_conv (Conv2D)   (None, 14, 14, 32)   36864       ['conv4_block6_1_relu[0][0]']    
                                                                                                  
 conv4_block6_concat (Concatena  (None, 14, 14, 448)  0          ['conv4_block5_concat[0][0]',    
 te)                                                              'conv4_block6_2_conv[0][0]']    
                                                                                                  
 conv4_block7_0_bn (BatchNormal  (None, 14, 14, 448)  1792       ['conv4_block6_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block7_0_relu (Activatio  (None, 14, 14, 448)  0          ['conv4_block7_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block7_1_conv (Conv2D)   (None, 14, 14, 128)  57344       ['conv4_block7_0_relu[0][0]']    
                                                                                                  
 conv4_block7_1_bn (BatchNormal  (None, 14, 14, 128)  512        ['conv4_block7_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block7_1_relu (Activatio  (None, 14, 14, 128)  0          ['conv4_block7_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block7_2_conv (Conv2D)   (None, 14, 14, 32)   36864       ['conv4_block7_1_relu[0][0]']    
                                                                                                  
 conv4_block7_concat (Concatena  (None, 14, 14, 480)  0          ['conv4_block6_concat[0][0]',    
 te)                                                              'conv4_block7_2_conv[0][0]']    
                                                                                                  
 conv4_block8_0_bn (BatchNormal  (None, 14, 14, 480)  1920       ['conv4_block7_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block8_0_relu (Activatio  (None, 14, 14, 480)  0          ['conv4_block8_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block8_1_conv (Conv2D)   (None, 14, 14, 128)  61440       ['conv4_block8_0_relu[0][0]']    
                                                                                                  
 conv4_block8_1_bn (BatchNormal  (None, 14, 14, 128)  512        ['conv4_block8_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block8_1_relu (Activatio  (None, 14, 14, 128)  0          ['conv4_block8_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block8_2_conv (Conv2D)   (None, 14, 14, 32)   36864       ['conv4_block8_1_relu[0][0]']    
                                                                                                  
 conv4_block8_concat (Concatena  (None, 14, 14, 512)  0          ['conv4_block7_concat[0][0]',    
 te)                                                              'conv4_block8_2_conv[0][0]']    
                                                                                                  
 conv4_block9_0_bn (BatchNormal  (None, 14, 14, 512)  2048       ['conv4_block8_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block9_0_relu (Activatio  (None, 14, 14, 512)  0          ['conv4_block9_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block9_1_conv (Conv2D)   (None, 14, 14, 128)  65536       ['conv4_block9_0_relu[0][0]']    
                                                                                                  
 conv4_block9_1_bn (BatchNormal  (None, 14, 14, 128)  512        ['conv4_block9_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv4_block9_1_relu (Activatio  (None, 14, 14, 128)  0          ['conv4_block9_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv4_block9_2_conv (Conv2D)   (None, 14, 14, 32)   36864       ['conv4_block9_1_relu[0][0]']    
                                                                                                  
 conv4_block9_concat (Concatena  (None, 14, 14, 544)  0          ['conv4_block8_concat[0][0]',    
 te)                                                              'conv4_block9_2_conv[0][0]']    
                                                                                                  
 conv4_block10_0_bn (BatchNorma  (None, 14, 14, 544)  2176       ['conv4_block9_concat[0][0]']    
 lization)                                                                                        
                                                                                                  
 conv4_block10_0_relu (Activati  (None, 14, 14, 544)  0          ['conv4_block10_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block10_1_conv (Conv2D)  (None, 14, 14, 128)  69632       ['conv4_block10_0_relu[0][0]']   
                                                                                                  
 conv4_block10_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block10_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block10_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block10_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block10_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block10_1_relu[0][0]']   
                                                                                                  
 conv4_block10_concat (Concaten  (None, 14, 14, 576)  0          ['conv4_block9_concat[0][0]',    
 ate)                                                             'conv4_block10_2_conv[0][0]']   
                                                                                                  
 conv4_block11_0_bn (BatchNorma  (None, 14, 14, 576)  2304       ['conv4_block10_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block11_0_relu (Activati  (None, 14, 14, 576)  0          ['conv4_block11_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block11_1_conv (Conv2D)  (None, 14, 14, 128)  73728       ['conv4_block11_0_relu[0][0]']   
                                                                                                  
 conv4_block11_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block11_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block11_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block11_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block11_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block11_1_relu[0][0]']   
                                                                                                  
 conv4_block11_concat (Concaten  (None, 14, 14, 608)  0          ['conv4_block10_concat[0][0]',   
 ate)                                                             'conv4_block11_2_conv[0][0]']   
                                                                                                  
 conv4_block12_0_bn (BatchNorma  (None, 14, 14, 608)  2432       ['conv4_block11_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block12_0_relu (Activati  (None, 14, 14, 608)  0          ['conv4_block12_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block12_1_conv (Conv2D)  (None, 14, 14, 128)  77824       ['conv4_block12_0_relu[0][0]']   
                                                                                                  
 conv4_block12_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block12_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block12_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block12_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block12_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block12_1_relu[0][0]']   
                                                                                                  
 conv4_block12_concat (Concaten  (None, 14, 14, 640)  0          ['conv4_block11_concat[0][0]',   
 ate)                                                             'conv4_block12_2_conv[0][0]']   
                                                                                                  
 conv4_block13_0_bn (BatchNorma  (None, 14, 14, 640)  2560       ['conv4_block12_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block13_0_relu (Activati  (None, 14, 14, 640)  0          ['conv4_block13_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block13_1_conv (Conv2D)  (None, 14, 14, 128)  81920       ['conv4_block13_0_relu[0][0]']   
                                                                                                  
 conv4_block13_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block13_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block13_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block13_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block13_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block13_1_relu[0][0]']   
                                                                                                  
 conv4_block13_concat (Concaten  (None, 14, 14, 672)  0          ['conv4_block12_concat[0][0]',   
 ate)                                                             'conv4_block13_2_conv[0][0]']   
                                                                                                  
 conv4_block14_0_bn (BatchNorma  (None, 14, 14, 672)  2688       ['conv4_block13_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block14_0_relu (Activati  (None, 14, 14, 672)  0          ['conv4_block14_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block14_1_conv (Conv2D)  (None, 14, 14, 128)  86016       ['conv4_block14_0_relu[0][0]']   
                                                                                                  
 conv4_block14_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block14_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block14_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block14_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block14_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block14_1_relu[0][0]']   
                                                                                                  
 conv4_block14_concat (Concaten  (None, 14, 14, 704)  0          ['conv4_block13_concat[0][0]',   
 ate)                                                             'conv4_block14_2_conv[0][0]']   
                                                                                                  
 conv4_block15_0_bn (BatchNorma  (None, 14, 14, 704)  2816       ['conv4_block14_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block15_0_relu (Activati  (None, 14, 14, 704)  0          ['conv4_block15_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block15_1_conv (Conv2D)  (None, 14, 14, 128)  90112       ['conv4_block15_0_relu[0][0]']   
                                                                                                  
 conv4_block15_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block15_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block15_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block15_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block15_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block15_1_relu[0][0]']   
                                                                                                  
 conv4_block15_concat (Concaten  (None, 14, 14, 736)  0          ['conv4_block14_concat[0][0]',   
 ate)                                                             'conv4_block15_2_conv[0][0]']   
                                                                                                  
 conv4_block16_0_bn (BatchNorma  (None, 14, 14, 736)  2944       ['conv4_block15_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block16_0_relu (Activati  (None, 14, 14, 736)  0          ['conv4_block16_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block16_1_conv (Conv2D)  (None, 14, 14, 128)  94208       ['conv4_block16_0_relu[0][0]']   
                                                                                                  
 conv4_block16_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block16_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block16_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block16_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block16_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block16_1_relu[0][0]']   
                                                                                                  
 conv4_block16_concat (Concaten  (None, 14, 14, 768)  0          ['conv4_block15_concat[0][0]',   
 ate)                                                             'conv4_block16_2_conv[0][0]']   
                                                                                                  
 conv4_block17_0_bn (BatchNorma  (None, 14, 14, 768)  3072       ['conv4_block16_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block17_0_relu (Activati  (None, 14, 14, 768)  0          ['conv4_block17_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block17_1_conv (Conv2D)  (None, 14, 14, 128)  98304       ['conv4_block17_0_relu[0][0]']   
                                                                                                  
 conv4_block17_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block17_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block17_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block17_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block17_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block17_1_relu[0][0]']   
                                                                                                  
 conv4_block17_concat (Concaten  (None, 14, 14, 800)  0          ['conv4_block16_concat[0][0]',   
 ate)                                                             'conv4_block17_2_conv[0][0]']   
                                                                                                  
 conv4_block18_0_bn (BatchNorma  (None, 14, 14, 800)  3200       ['conv4_block17_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block18_0_relu (Activati  (None, 14, 14, 800)  0          ['conv4_block18_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block18_1_conv (Conv2D)  (None, 14, 14, 128)  102400      ['conv4_block18_0_relu[0][0]']   
                                                                                                  
 conv4_block18_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block18_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block18_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block18_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block18_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block18_1_relu[0][0]']   
                                                                                                  
 conv4_block18_concat (Concaten  (None, 14, 14, 832)  0          ['conv4_block17_concat[0][0]',   
 ate)                                                             'conv4_block18_2_conv[0][0]']   
                                                                                                  
 conv4_block19_0_bn (BatchNorma  (None, 14, 14, 832)  3328       ['conv4_block18_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block19_0_relu (Activati  (None, 14, 14, 832)  0          ['conv4_block19_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block19_1_conv (Conv2D)  (None, 14, 14, 128)  106496      ['conv4_block19_0_relu[0][0]']   
                                                                                                  
 conv4_block19_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block19_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block19_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block19_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block19_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block19_1_relu[0][0]']   
                                                                                                  
 conv4_block19_concat (Concaten  (None, 14, 14, 864)  0          ['conv4_block18_concat[0][0]',   
 ate)                                                             'conv4_block19_2_conv[0][0]']   
                                                                                                  
 conv4_block20_0_bn (BatchNorma  (None, 14, 14, 864)  3456       ['conv4_block19_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block20_0_relu (Activati  (None, 14, 14, 864)  0          ['conv4_block20_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block20_1_conv (Conv2D)  (None, 14, 14, 128)  110592      ['conv4_block20_0_relu[0][0]']   
                                                                                                  
 conv4_block20_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block20_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block20_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block20_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block20_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block20_1_relu[0][0]']   
                                                                                                  
 conv4_block20_concat (Concaten  (None, 14, 14, 896)  0          ['conv4_block19_concat[0][0]',   
 ate)                                                             'conv4_block20_2_conv[0][0]']   
                                                                                                  
 conv4_block21_0_bn (BatchNorma  (None, 14, 14, 896)  3584       ['conv4_block20_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block21_0_relu (Activati  (None, 14, 14, 896)  0          ['conv4_block21_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block21_1_conv (Conv2D)  (None, 14, 14, 128)  114688      ['conv4_block21_0_relu[0][0]']   
                                                                                                  
 conv4_block21_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block21_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block21_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block21_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block21_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block21_1_relu[0][0]']   
                                                                                                  
 conv4_block21_concat (Concaten  (None, 14, 14, 928)  0          ['conv4_block20_concat[0][0]',   
 ate)                                                             'conv4_block21_2_conv[0][0]']   
                                                                                                  
 conv4_block22_0_bn (BatchNorma  (None, 14, 14, 928)  3712       ['conv4_block21_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block22_0_relu (Activati  (None, 14, 14, 928)  0          ['conv4_block22_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block22_1_conv (Conv2D)  (None, 14, 14, 128)  118784      ['conv4_block22_0_relu[0][0]']   
                                                                                                  
 conv4_block22_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block22_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block22_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block22_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block22_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block22_1_relu[0][0]']   
                                                                                                  
 conv4_block22_concat (Concaten  (None, 14, 14, 960)  0          ['conv4_block21_concat[0][0]',   
 ate)                                                             'conv4_block22_2_conv[0][0]']   
                                                                                                  
 conv4_block23_0_bn (BatchNorma  (None, 14, 14, 960)  3840       ['conv4_block22_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block23_0_relu (Activati  (None, 14, 14, 960)  0          ['conv4_block23_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block23_1_conv (Conv2D)  (None, 14, 14, 128)  122880      ['conv4_block23_0_relu[0][0]']   
                                                                                                  
 conv4_block23_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block23_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block23_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block23_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block23_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block23_1_relu[0][0]']   
                                                                                                  
 conv4_block23_concat (Concaten  (None, 14, 14, 992)  0          ['conv4_block22_concat[0][0]',   
 ate)                                                             'conv4_block23_2_conv[0][0]']   
                                                                                                  
 conv4_block24_0_bn (BatchNorma  (None, 14, 14, 992)  3968       ['conv4_block23_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block24_0_relu (Activati  (None, 14, 14, 992)  0          ['conv4_block24_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block24_1_conv (Conv2D)  (None, 14, 14, 128)  126976      ['conv4_block24_0_relu[0][0]']   
                                                                                                  
 conv4_block24_1_bn (BatchNorma  (None, 14, 14, 128)  512        ['conv4_block24_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv4_block24_1_relu (Activati  (None, 14, 14, 128)  0          ['conv4_block24_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv4_block24_2_conv (Conv2D)  (None, 14, 14, 32)   36864       ['conv4_block24_1_relu[0][0]']   
                                                                                                  
 conv4_block24_concat (Concaten  (None, 14, 14, 1024  0          ['conv4_block23_concat[0][0]',   
 ate)                           )                                 'conv4_block24_2_conv[0][0]']   
                                                                                                  
 pool4_bn (BatchNormalization)  (None, 14, 14, 1024  4096        ['conv4_block24_concat[0][0]']   
                                )                                                                 
                                                                                                  
 pool4_relu (Activation)        (None, 14, 14, 1024  0           ['pool4_bn[0][0]']               
                                )                                                                 
                                                                                                  
 pool4_conv (Conv2D)            (None, 14, 14, 512)  524288      ['pool4_relu[0][0]']             
                                                                                                  
 pool4_pool (AveragePooling2D)  (None, 7, 7, 512)    0           ['pool4_conv[0][0]']             
                                                                                                  
 conv5_block1_0_bn (BatchNormal  (None, 7, 7, 512)   2048        ['pool4_pool[0][0]']             
 ization)                                                                                         
                                                                                                  
 conv5_block1_0_relu (Activatio  (None, 7, 7, 512)   0           ['conv5_block1_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block1_1_conv (Conv2D)   (None, 7, 7, 128)    65536       ['conv5_block1_0_relu[0][0]']    
                                                                                                  
 conv5_block1_1_bn (BatchNormal  (None, 7, 7, 128)   512         ['conv5_block1_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block1_1_relu (Activatio  (None, 7, 7, 128)   0           ['conv5_block1_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block1_2_conv (Conv2D)   (None, 7, 7, 32)     36864       ['conv5_block1_1_relu[0][0]']    
                                                                                                  
 conv5_block1_concat (Concatena  (None, 7, 7, 544)   0           ['pool4_pool[0][0]',             
 te)                                                              'conv5_block1_2_conv[0][0]']    
                                                                                                  
 conv5_block2_0_bn (BatchNormal  (None, 7, 7, 544)   2176        ['conv5_block1_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block2_0_relu (Activatio  (None, 7, 7, 544)   0           ['conv5_block2_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block2_1_conv (Conv2D)   (None, 7, 7, 128)    69632       ['conv5_block2_0_relu[0][0]']    
                                                                                                  
 conv5_block2_1_bn (BatchNormal  (None, 7, 7, 128)   512         ['conv5_block2_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block2_1_relu (Activatio  (None, 7, 7, 128)   0           ['conv5_block2_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block2_2_conv (Conv2D)   (None, 7, 7, 32)     36864       ['conv5_block2_1_relu[0][0]']    
                                                                                                  
 conv5_block2_concat (Concatena  (None, 7, 7, 576)   0           ['conv5_block1_concat[0][0]',    
 te)                                                              'conv5_block2_2_conv[0][0]']    
                                                                                                  
 conv5_block3_0_bn (BatchNormal  (None, 7, 7, 576)   2304        ['conv5_block2_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block3_0_relu (Activatio  (None, 7, 7, 576)   0           ['conv5_block3_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block3_1_conv (Conv2D)   (None, 7, 7, 128)    73728       ['conv5_block3_0_relu[0][0]']    
                                                                                                  
 conv5_block3_1_bn (BatchNormal  (None, 7, 7, 128)   512         ['conv5_block3_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block3_1_relu (Activatio  (None, 7, 7, 128)   0           ['conv5_block3_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block3_2_conv (Conv2D)   (None, 7, 7, 32)     36864       ['conv5_block3_1_relu[0][0]']    
                                                                                                  
 conv5_block3_concat (Concatena  (None, 7, 7, 608)   0           ['conv5_block2_concat[0][0]',    
 te)                                                              'conv5_block3_2_conv[0][0]']    
                                                                                                  
 conv5_block4_0_bn (BatchNormal  (None, 7, 7, 608)   2432        ['conv5_block3_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block4_0_relu (Activatio  (None, 7, 7, 608)   0           ['conv5_block4_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block4_1_conv (Conv2D)   (None, 7, 7, 128)    77824       ['conv5_block4_0_relu[0][0]']    
                                                                                                  
 conv5_block4_1_bn (BatchNormal  (None, 7, 7, 128)   512         ['conv5_block4_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block4_1_relu (Activatio  (None, 7, 7, 128)   0           ['conv5_block4_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block4_2_conv (Conv2D)   (None, 7, 7, 32)     36864       ['conv5_block4_1_relu[0][0]']    
                                                                                                  
 conv5_block4_concat (Concatena  (None, 7, 7, 640)   0           ['conv5_block3_concat[0][0]',    
 te)                                                              'conv5_block4_2_conv[0][0]']    
                                                                                                  
 conv5_block5_0_bn (BatchNormal  (None, 7, 7, 640)   2560        ['conv5_block4_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block5_0_relu (Activatio  (None, 7, 7, 640)   0           ['conv5_block5_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block5_1_conv (Conv2D)   (None, 7, 7, 128)    81920       ['conv5_block5_0_relu[0][0]']    
                                                                                                  
 conv5_block5_1_bn (BatchNormal  (None, 7, 7, 128)   512         ['conv5_block5_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block5_1_relu (Activatio  (None, 7, 7, 128)   0           ['conv5_block5_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block5_2_conv (Conv2D)   (None, 7, 7, 32)     36864       ['conv5_block5_1_relu[0][0]']    
                                                                                                  
 conv5_block5_concat (Concatena  (None, 7, 7, 672)   0           ['conv5_block4_concat[0][0]',    
 te)                                                              'conv5_block5_2_conv[0][0]']    
                                                                                                  
 conv5_block6_0_bn (BatchNormal  (None, 7, 7, 672)   2688        ['conv5_block5_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block6_0_relu (Activatio  (None, 7, 7, 672)   0           ['conv5_block6_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block6_1_conv (Conv2D)   (None, 7, 7, 128)    86016       ['conv5_block6_0_relu[0][0]']    
                                                                                                  
 conv5_block6_1_bn (BatchNormal  (None, 7, 7, 128)   512         ['conv5_block6_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block6_1_relu (Activatio  (None, 7, 7, 128)   0           ['conv5_block6_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block6_2_conv (Conv2D)   (None, 7, 7, 32)     36864       ['conv5_block6_1_relu[0][0]']    
                                                                                                  
 conv5_block6_concat (Concatena  (None, 7, 7, 704)   0           ['conv5_block5_concat[0][0]',    
 te)                                                              'conv5_block6_2_conv[0][0]']    
                                                                                                  
 conv5_block7_0_bn (BatchNormal  (None, 7, 7, 704)   2816        ['conv5_block6_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block7_0_relu (Activatio  (None, 7, 7, 704)   0           ['conv5_block7_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block7_1_conv (Conv2D)   (None, 7, 7, 128)    90112       ['conv5_block7_0_relu[0][0]']    
                                                                                                  
 conv5_block7_1_bn (BatchNormal  (None, 7, 7, 128)   512         ['conv5_block7_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block7_1_relu (Activatio  (None, 7, 7, 128)   0           ['conv5_block7_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block7_2_conv (Conv2D)   (None, 7, 7, 32)     36864       ['conv5_block7_1_relu[0][0]']    
                                                                                                  
 conv5_block7_concat (Concatena  (None, 7, 7, 736)   0           ['conv5_block6_concat[0][0]',    
 te)                                                              'conv5_block7_2_conv[0][0]']    
                                                                                                  
 conv5_block8_0_bn (BatchNormal  (None, 7, 7, 736)   2944        ['conv5_block7_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block8_0_relu (Activatio  (None, 7, 7, 736)   0           ['conv5_block8_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block8_1_conv (Conv2D)   (None, 7, 7, 128)    94208       ['conv5_block8_0_relu[0][0]']    
                                                                                                  
 conv5_block8_1_bn (BatchNormal  (None, 7, 7, 128)   512         ['conv5_block8_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block8_1_relu (Activatio  (None, 7, 7, 128)   0           ['conv5_block8_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block8_2_conv (Conv2D)   (None, 7, 7, 32)     36864       ['conv5_block8_1_relu[0][0]']    
                                                                                                  
 conv5_block8_concat (Concatena  (None, 7, 7, 768)   0           ['conv5_block7_concat[0][0]',    
 te)                                                              'conv5_block8_2_conv[0][0]']    
                                                                                                  
 conv5_block9_0_bn (BatchNormal  (None, 7, 7, 768)   3072        ['conv5_block8_concat[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block9_0_relu (Activatio  (None, 7, 7, 768)   0           ['conv5_block9_0_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block9_1_conv (Conv2D)   (None, 7, 7, 128)    98304       ['conv5_block9_0_relu[0][0]']    
                                                                                                  
 conv5_block9_1_bn (BatchNormal  (None, 7, 7, 128)   512         ['conv5_block9_1_conv[0][0]']    
 ization)                                                                                         
                                                                                                  
 conv5_block9_1_relu (Activatio  (None, 7, 7, 128)   0           ['conv5_block9_1_bn[0][0]']      
 n)                                                                                               
                                                                                                  
 conv5_block9_2_conv (Conv2D)   (None, 7, 7, 32)     36864       ['conv5_block9_1_relu[0][0]']    
                                                                                                  
 conv5_block9_concat (Concatena  (None, 7, 7, 800)   0           ['conv5_block8_concat[0][0]',    
 te)                                                              'conv5_block9_2_conv[0][0]']    
                                                                                                  
 conv5_block10_0_bn (BatchNorma  (None, 7, 7, 800)   3200        ['conv5_block9_concat[0][0]']    
 lization)                                                                                        
                                                                                                  
 conv5_block10_0_relu (Activati  (None, 7, 7, 800)   0           ['conv5_block10_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block10_1_conv (Conv2D)  (None, 7, 7, 128)    102400      ['conv5_block10_0_relu[0][0]']   
                                                                                                  
 conv5_block10_1_bn (BatchNorma  (None, 7, 7, 128)   512         ['conv5_block10_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv5_block10_1_relu (Activati  (None, 7, 7, 128)   0           ['conv5_block10_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block10_2_conv (Conv2D)  (None, 7, 7, 32)     36864       ['conv5_block10_1_relu[0][0]']   
                                                                                                  
 conv5_block10_concat (Concaten  (None, 7, 7, 832)   0           ['conv5_block9_concat[0][0]',    
 ate)                                                             'conv5_block10_2_conv[0][0]']   
                                                                                                  
 conv5_block11_0_bn (BatchNorma  (None, 7, 7, 832)   3328        ['conv5_block10_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv5_block11_0_relu (Activati  (None, 7, 7, 832)   0           ['conv5_block11_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block11_1_conv (Conv2D)  (None, 7, 7, 128)    106496      ['conv5_block11_0_relu[0][0]']   
                                                                                                  
 conv5_block11_1_bn (BatchNorma  (None, 7, 7, 128)   512         ['conv5_block11_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv5_block11_1_relu (Activati  (None, 7, 7, 128)   0           ['conv5_block11_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block11_2_conv (Conv2D)  (None, 7, 7, 32)     36864       ['conv5_block11_1_relu[0][0]']   
                                                                                                  
 conv5_block11_concat (Concaten  (None, 7, 7, 864)   0           ['conv5_block10_concat[0][0]',   
 ate)                                                             'conv5_block11_2_conv[0][0]']   
                                                                                                  
 conv5_block12_0_bn (BatchNorma  (None, 7, 7, 864)   3456        ['conv5_block11_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv5_block12_0_relu (Activati  (None, 7, 7, 864)   0           ['conv5_block12_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block12_1_conv (Conv2D)  (None, 7, 7, 128)    110592      ['conv5_block12_0_relu[0][0]']   
                                                                                                  
 conv5_block12_1_bn (BatchNorma  (None, 7, 7, 128)   512         ['conv5_block12_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv5_block12_1_relu (Activati  (None, 7, 7, 128)   0           ['conv5_block12_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block12_2_conv (Conv2D)  (None, 7, 7, 32)     36864       ['conv5_block12_1_relu[0][0]']   
                                                                                                  
 conv5_block12_concat (Concaten  (None, 7, 7, 896)   0           ['conv5_block11_concat[0][0]',   
 ate)                                                             'conv5_block12_2_conv[0][0]']   
                                                                                                  
 conv5_block13_0_bn (BatchNorma  (None, 7, 7, 896)   3584        ['conv5_block12_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv5_block13_0_relu (Activati  (None, 7, 7, 896)   0           ['conv5_block13_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block13_1_conv (Conv2D)  (None, 7, 7, 128)    114688      ['conv5_block13_0_relu[0][0]']   
                                                                                                  
 conv5_block13_1_bn (BatchNorma  (None, 7, 7, 128)   512         ['conv5_block13_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv5_block13_1_relu (Activati  (None, 7, 7, 128)   0           ['conv5_block13_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block13_2_conv (Conv2D)  (None, 7, 7, 32)     36864       ['conv5_block13_1_relu[0][0]']   
                                                                                                  
 conv5_block13_concat (Concaten  (None, 7, 7, 928)   0           ['conv5_block12_concat[0][0]',   
 ate)                                                             'conv5_block13_2_conv[0][0]']   
                                                                                                  
 conv5_block14_0_bn (BatchNorma  (None, 7, 7, 928)   3712        ['conv5_block13_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv5_block14_0_relu (Activati  (None, 7, 7, 928)   0           ['conv5_block14_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block14_1_conv (Conv2D)  (None, 7, 7, 128)    118784      ['conv5_block14_0_relu[0][0]']   
                                                                                                  
 conv5_block14_1_bn (BatchNorma  (None, 7, 7, 128)   512         ['conv5_block14_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv5_block14_1_relu (Activati  (None, 7, 7, 128)   0           ['conv5_block14_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block14_2_conv (Conv2D)  (None, 7, 7, 32)     36864       ['conv5_block14_1_relu[0][0]']   
                                                                                                  
 conv5_block14_concat (Concaten  (None, 7, 7, 960)   0           ['conv5_block13_concat[0][0]',   
 ate)                                                             'conv5_block14_2_conv[0][0]']   
                                                                                                  
 conv5_block15_0_bn (BatchNorma  (None, 7, 7, 960)   3840        ['conv5_block14_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv5_block15_0_relu (Activati  (None, 7, 7, 960)   0           ['conv5_block15_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block15_1_conv (Conv2D)  (None, 7, 7, 128)    122880      ['conv5_block15_0_relu[0][0]']   
                                                                                                  
 conv5_block15_1_bn (BatchNorma  (None, 7, 7, 128)   512         ['conv5_block15_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv5_block15_1_relu (Activati  (None, 7, 7, 128)   0           ['conv5_block15_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block15_2_conv (Conv2D)  (None, 7, 7, 32)     36864       ['conv5_block15_1_relu[0][0]']   
                                                                                                  
 conv5_block15_concat (Concaten  (None, 7, 7, 992)   0           ['conv5_block14_concat[0][0]',   
 ate)                                                             'conv5_block15_2_conv[0][0]']   
                                                                                                  
 conv5_block16_0_bn (BatchNorma  (None, 7, 7, 992)   3968        ['conv5_block15_concat[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv5_block16_0_relu (Activati  (None, 7, 7, 992)   0           ['conv5_block16_0_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block16_1_conv (Conv2D)  (None, 7, 7, 128)    126976      ['conv5_block16_0_relu[0][0]']   
                                                                                                  
 conv5_block16_1_bn (BatchNorma  (None, 7, 7, 128)   512         ['conv5_block16_1_conv[0][0]']   
 lization)                                                                                        
                                                                                                  
 conv5_block16_1_relu (Activati  (None, 7, 7, 128)   0           ['conv5_block16_1_bn[0][0]']     
 on)                                                                                              
                                                                                                  
 conv5_block16_2_conv (Conv2D)  (None, 7, 7, 32)     36864       ['conv5_block16_1_relu[0][0]']   
                                                                                                  
 conv5_block16_concat (Concaten  (None, 7, 7, 1024)  0           ['conv5_block15_concat[0][0]',   
 ate)                                                             'conv5_block16_2_conv[0][0]']   
                                                                                                  
 bn (BatchNormalization)        (None, 7, 7, 1024)   4096        ['conv5_block16_concat[0][0]']   
                                                                                                  
 relu (Activation)              (None, 7, 7, 1024)   0           ['bn[0][0]']                     
                                                                                                  
==================================================================================================
Total params: 7,037,504
Trainable params: 6,953,856
Non-trainable params: 83,648
__________________________________________________________________________________________________
In [123]:
modelDenseNet = Sequential()
modelDenseNet.add(denseNet)
modelDenseNet.add( Flatten())
modelDenseNet.add( Dense(units=32, activation = 'relu' , input_dim = 7 * 7 * 1024))
modelDenseNet.add( Dense(units=3, activation = 'softmax' ) )
modelDenseNet.summary()
Model: "sequential_23"
_________________________________________________________________
 Layer (type)                Output Shape              Param #   
=================================================================
 densenet121 (Functional)    (None, 7, 7, 1024)        7037504   
                                                                 
 flatten_19 (Flatten)        (None, 50176)             0         
                                                                 
 dense_38 (Dense)            (None, 32)                1605664   
                                                                 
 dense_39 (Dense)            (None, 3)                 99        
                                                                 
=================================================================
Total params: 8,643,267
Trainable params: 8,559,619
Non-trainable params: 83,648
_________________________________________________________________
In [124]:
modelDenseNet.compile( optimizer = 'rmsprop', loss = 'categorical_crossentropy', metrics = [ 'accuracy', Precision(), Recall()] )
historyDenseNet = modelDenseNet.fit( train_ds, validation_data = valid_ds, epochs = 40, batch_size = 64, callbacks = [callback] )
Epoch 1/40
23/23 [==============================] - 89s 844ms/step - loss: 4.2559 - accuracy: 0.6281 - precision_20: 0.6357 - recall_20: 0.5808 - val_loss: 10.8503 - val_accuracy: 0.3875 - val_precision_20: 0.3849 - val_recall_20: 0.3833
Epoch 2/40
23/23 [==============================] - 11s 465ms/step - loss: 0.5516 - accuracy: 0.8384 - precision_20: 0.8543 - recall_20: 0.8329 - val_loss: 5137.0029 - val_accuracy: 0.3083 - val_precision_20: 0.3083 - val_recall_20: 0.3083
Epoch 3/40
23/23 [==============================] - 10s 447ms/step - loss: 0.6790 - accuracy: 0.8593 - precision_20: 0.8838 - recall_20: 0.8370 - val_loss: 126436.4297 - val_accuracy: 0.3083 - val_precision_20: 0.3083 - val_recall_20: 0.3083
Epoch 4/40
23/23 [==============================] - 10s 450ms/step - loss: 0.3604 - accuracy: 0.9039 - precision_20: 0.9326 - recall_20: 0.8858 - val_loss: 3461.6372 - val_accuracy: 0.3417 - val_precision_20: 0.3417 - val_recall_20: 0.3417
Epoch 5/40
23/23 [==============================] - 10s 457ms/step - loss: 0.1906 - accuracy: 0.9345 - precision_20: 0.9442 - recall_20: 0.9192 - val_loss: 1595.1185 - val_accuracy: 0.3667 - val_precision_20: 0.3667 - val_recall_20: 0.3667
Epoch 6/40
23/23 [==============================] - 10s 446ms/step - loss: 0.1406 - accuracy: 0.9554 - precision_20: 0.9607 - recall_20: 0.9526 - val_loss: 10.7806 - val_accuracy: 0.7333 - val_precision_20: 0.7333 - val_recall_20: 0.7333
Epoch 7/40
23/23 [==============================] - 11s 459ms/step - loss: 0.3797 - accuracy: 0.9262 - precision_20: 0.9310 - recall_20: 0.9206 - val_loss: 99.7670 - val_accuracy: 0.3750 - val_precision_20: 0.3644 - val_recall_20: 0.3583
Epoch 8/40
23/23 [==============================] - 10s 449ms/step - loss: 0.1120 - accuracy: 0.9666 - precision_20: 0.9690 - recall_20: 0.9582 - val_loss: 129.8813 - val_accuracy: 0.5708 - val_precision_20: 0.5799 - val_recall_20: 0.5292
Epoch 9/40
23/23 [==============================] - 10s 439ms/step - loss: 0.1511 - accuracy: 0.9526 - precision_20: 0.9615 - recall_20: 0.9401 - val_loss: 14.0523 - val_accuracy: 0.8125 - val_precision_20: 0.8125 - val_recall_20: 0.8125
Epoch 10/40
23/23 [==============================] - 11s 459ms/step - loss: 0.1447 - accuracy: 0.9568 - precision_20: 0.9607 - recall_20: 0.9540 - val_loss: 2.9135 - val_accuracy: 0.7583 - val_precision_20: 0.7583 - val_recall_20: 0.7583
Epoch 11/40
23/23 [==============================] - 11s 459ms/step - loss: 0.0385 - accuracy: 0.9875 - precision_20: 0.9902 - recall_20: 0.9833 - val_loss: 4.0311 - val_accuracy: 0.9500 - val_precision_20: 0.9540 - val_recall_20: 0.9500
Epoch 12/40
23/23 [==============================] - 11s 456ms/step - loss: 0.2195 - accuracy: 0.9554 - precision_20: 0.9606 - recall_20: 0.9513 - val_loss: 2.9740 - val_accuracy: 0.8292 - val_precision_20: 0.8722 - val_recall_20: 0.8250
Epoch 13/40
23/23 [==============================] - 11s 472ms/step - loss: 0.2578 - accuracy: 0.9540 - precision_20: 0.9632 - recall_20: 0.9485 - val_loss: 10.2736 - val_accuracy: 0.6958 - val_precision_20: 0.7581 - val_recall_20: 0.6792
Epoch 14/40
23/23 [==============================] - 10s 426ms/step - loss: 0.1092 - accuracy: 0.9680 - precision_20: 0.9730 - recall_20: 0.9554 - val_loss: 0.5421 - val_accuracy: 0.8750 - val_precision_20: 0.8771 - val_recall_20: 0.8625
Epoch 15/40
23/23 [==============================] - 10s 448ms/step - loss: 0.0664 - accuracy: 0.9777 - precision_20: 0.9818 - recall_20: 0.9763 - val_loss: 5.9433 - val_accuracy: 0.7833 - val_precision_20: 0.7866 - val_recall_20: 0.7833
Epoch 16/40
23/23 [==============================] - 11s 467ms/step - loss: 0.0698 - accuracy: 0.9805 - precision_20: 0.9818 - recall_20: 0.9777 - val_loss: 41.7536 - val_accuracy: 0.6208 - val_precision_20: 0.6208 - val_recall_20: 0.6208
Epoch 17/40
23/23 [==============================] - 11s 451ms/step - loss: 0.0990 - accuracy: 0.9763 - precision_20: 0.9777 - recall_20: 0.9749 - val_loss: 13.2540 - val_accuracy: 0.6958 - val_precision_20: 0.6946 - val_recall_20: 0.6917
Epoch 18/40
23/23 [==============================] - 11s 457ms/step - loss: 0.3234 - accuracy: 0.9485 - precision_20: 0.9497 - recall_20: 0.9457 - val_loss: 50.8204 - val_accuracy: 0.5208 - val_precision_20: 0.5066 - val_recall_20: 0.4792
Epoch 19/40
23/23 [==============================] - 11s 460ms/step - loss: 0.0244 - accuracy: 0.9916 - precision_20: 0.9916 - recall_20: 0.9916 - val_loss: 3.4960 - val_accuracy: 0.8833 - val_precision_20: 0.8927 - val_recall_20: 0.8667
Epoch 20/40
23/23 [==============================] - 10s 451ms/step - loss: 0.0884 - accuracy: 0.9694 - precision_20: 0.9720 - recall_20: 0.9680 - val_loss: 5.7612 - val_accuracy: 0.8167 - val_precision_20: 0.8178 - val_recall_20: 0.8042
Epoch 21/40
23/23 [==============================] - 10s 448ms/step - loss: 0.0536 - accuracy: 0.9861 - precision_20: 0.9874 - recall_20: 0.9819 - val_loss: 1.2667 - val_accuracy: 0.9167 - val_precision_20: 0.9163 - val_recall_20: 0.9125
Epoch 22/40
23/23 [==============================] - 11s 462ms/step - loss: 0.0879 - accuracy: 0.9749 - precision_20: 0.9816 - recall_20: 0.9680 - val_loss: 1.1883 - val_accuracy: 0.9208 - val_precision_20: 0.9247 - val_recall_20: 0.9208
Epoch 23/40
23/23 [==============================] - 11s 452ms/step - loss: 0.0309 - accuracy: 0.9903 - precision_20: 0.9902 - recall_20: 0.9833 - val_loss: 0.9257 - val_accuracy: 0.9417 - val_precision_20: 0.9417 - val_recall_20: 0.9417
Epoch 24/40
23/23 [==============================] - 11s 467ms/step - loss: 0.0067 - accuracy: 0.9986 - precision_20: 0.9986 - recall_20: 0.9986 - val_loss: 0.5900 - val_accuracy: 0.9500 - val_precision_20: 0.9500 - val_recall_20: 0.9500
Epoch 25/40
23/23 [==============================] - 11s 467ms/step - loss: 0.0471 - accuracy: 0.9861 - precision_20: 0.9861 - recall_20: 0.9861 - val_loss: 0.6355 - val_accuracy: 0.9125 - val_precision_20: 0.9163 - val_recall_20: 0.9125
Epoch 26/40
23/23 [==============================] - 10s 431ms/step - loss: 0.1449 - accuracy: 0.9694 - precision_20: 0.9720 - recall_20: 0.9680 - val_loss: 2.5493 - val_accuracy: 0.9000 - val_precision_20: 0.9038 - val_recall_20: 0.9000
Epoch 27/40
23/23 [==============================] - 11s 459ms/step - loss: 0.1328 - accuracy: 0.9847 - precision_20: 0.9847 - recall_20: 0.9833 - val_loss: 16.1571 - val_accuracy: 0.4292 - val_precision_20: 0.4292 - val_recall_20: 0.4292
Epoch 28/40
23/23 [==============================] - 10s 451ms/step - loss: 0.0353 - accuracy: 0.9903 - precision_20: 0.9944 - recall_20: 0.9875 - val_loss: 0.9448 - val_accuracy: 0.9208 - val_precision_20: 0.9198 - val_recall_20: 0.9083
Epoch 29/40
23/23 [==============================] - 11s 460ms/step - loss: 0.0713 - accuracy: 0.9847 - precision_20: 0.9847 - recall_20: 0.9833 - val_loss: 0.7496 - val_accuracy: 0.9458 - val_precision_20: 0.9458 - val_recall_20: 0.9458
Epoch 30/40
23/23 [==============================] - 11s 461ms/step - loss: 0.0492 - accuracy: 0.9903 - precision_20: 0.9903 - recall_20: 0.9903 - val_loss: 0.8086 - val_accuracy: 0.9333 - val_precision_20: 0.9333 - val_recall_20: 0.9333
Epoch 31/40
23/23 [==============================] - 10s 435ms/step - loss: 0.0378 - accuracy: 0.9889 - precision_20: 0.9888 - recall_20: 0.9875 - val_loss: 1.2742 - val_accuracy: 0.9167 - val_precision_20: 0.9205 - val_recall_20: 0.9167
Epoch 32/40
23/23 [==============================] - 11s 451ms/step - loss: 0.0282 - accuracy: 0.9903 - precision_20: 0.9903 - recall_20: 0.9903 - val_loss: 16.6628 - val_accuracy: 0.6833 - val_precision_20: 0.6849 - val_recall_20: 0.6792
Epoch 33/40
23/23 [==============================] - 10s 447ms/step - loss: 0.0766 - accuracy: 0.9805 - precision_20: 0.9805 - recall_20: 0.9805 - val_loss: 1.7627 - val_accuracy: 0.8792 - val_precision_20: 0.8787 - val_recall_20: 0.8750
Epoch 34/40
23/23 [==============================] - 11s 483ms/step - loss: 0.0162 - accuracy: 0.9916 - precision_20: 0.9916 - recall_20: 0.9916 - val_loss: 0.4428 - val_accuracy: 0.9583 - val_precision_20: 0.9583 - val_recall_20: 0.9583
Epoch 35/40
23/23 [==============================] - 14s 596ms/step - loss: 6.4121e-04 - accuracy: 1.0000 - precision_20: 1.0000 - recall_20: 1.0000 - val_loss: 0.3798 - val_accuracy: 0.9625 - val_precision_20: 0.9625 - val_recall_20: 0.9625
In [125]:
plt.subplots_adjust(right=1.95, left=.03)

plt.subplot(1,3,1)
plt.plot(historyDenseNet.history['accuracy'])
plt.plot(historyDenseNet.history['val_accuracy'])
plt.ylabel('Accuracy')
plt.xlabel('')
plt.legend(['training','validation'], loc="lower right")

plt.subplot(1,3,2)
plt.plot(historyDenseNet.history['precision_20'])
plt.plot(historyDenseNet.history['val_precision_20'])
plt.ylabel('Precision')
plt.xlabel('Epoch')

plt.subplot(1,3,3)
plt.plot(historyDenseNet.history['recall_20'])
plt.plot(historyDenseNet.history['val_recall_20'])
plt.ylabel('Recall')
plt.xlabel('')

plt.show()
In [126]:
test_loss, test_acc, test_precision, test_recall = modelDenseNet.evaluate(test_ds)
print('%s %.2f' % ('validation_acc: ', test_acc*100.0 ))
print('%s %.2f' % ('validation_loss:', test_loss ))
print('%s %.2f' % ('validation_precision:', test_precision ))
print('%s %.2f' % ('validation_recall:', test_recall ))
8/8 [==============================] - 2s 244ms/step - loss: 0.3377 - accuracy: 0.9500 - precision_20: 0.9500 - recall_20: 0.9500
validation_acc:  95.00
validation_loss: 0.34
validation_precision: 0.95
validation_recall: 0.95

Convert notebook to html

In [ ]:
%%shell
jupyter nbconvert --to html //content/Tasks1and2.ipynb
[NbConvertApp] Converting notebook //content/Tasks1and2.ipynb to html
[NbConvertApp] Writing 969045 bytes to //content/Tasks1and2.html
Out[ ]: